Skip to content

fbarraga/Python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Curs: Introducció a python3

Hashtags: #FpInfor #Daw #Dam #Asix #DamMp06

Introducció

Benvinguts al curs de Python. Aquest curs es un repositori de molta documentació trobada a través de la web (realpython.com,w3schools..., repositoris de github i altres) i vol servir com a introducció a un dels llenguatges més utilitzats avui en dia.

Aquest curs està pensat en ser utilitzat en Cicles Formatius de Grau Superior, mòduls de programació i tots aquells en els que s'hagi d'utilitzar dades i accés a dades.

Aquest curs està obert a tothom. Per fer-hi aportacions no dubteu en contactar amb mi!.

Autors

Aquest repositori es una recopilació d'informació pròpia i extreta d'altres repositoris públics i mantinguda per:

De l'Institut Sa Palomera - Blanes

Reconeixements

Alguns del materials que podeu trobar en aquest moodle provenen de les següents fonts:

UF0: Introducció a Python

Conceptes bàsics Unitats Teoria Exercicis
Introducció 1 2 3 4 5
Estructura del llenguatge 6 7 8 9 10
Tipus de dades numèriques 12 13 A1
Estructures de control Condicionals: IF / ELSE 15 A2
Estructures de control Repetitives: WHILE / FOR 17 A3
Tipus de dades seqüencia 19
Tipus de dades seqüència: Llistes 20 21 A4
Tipus de dades seqüència: Diccionaris 33 34 A5
Tipus de dades seqüència: Tuples i Rangs 23 24 25
Tipus de dades seqüència: Cadenes 26 27 28 A6
Tipus de dades bytesarray,set,frozenset 30 31 32
Errors i excepcions 43
Programació Orientada a Objectes 50 51 52 53 A10

UF1: Persistència de dades amb fitxers

Persistència de dades amb fitxers Unitats Teoria Exercicis
Sistema de fitxers 36
Mòduls de python per la gestió de fitxers 45
Procés de Serialització 36a
Tipus de fitxers 36b
Treball amb fitxers texte 36c
Treball amb fitxers binari 36d
Fitxers CSV CSV
Fitxers JSON JSON
Fitxers XML XML
Treball de fitxers A1-1

UF2: Persistència amb Bases de Dades BDR,BDOR,BDOO

Persistència amb Bases de Dades BDR,BDOR,BDOO Unitats Teoria Exercicis
Connectors a Bases de dades 60
Connectar a Postgres 60a
Què és un ORM 60c
--ORM: Peewee 60d
--ORM: Alchemy 60e
Bases de dades Orientades a Objectes/NOSQL 60f
--BD NOSQL: TinyDB Samples 60f
Treball amb Bases de Dades BDR,BDOR,BDOO A2-1

UF3: Persistència amb Bases de Dades XML

Persistència amb Bases de Dades XML Unitats Teoria Exercicis
Bases de dades XML bdxml
MongoDB on Premise / on Cloud mongo
MongoDB i Python mongopython
Treball amb Bases de Dades A3-1

UF4: Components d'accés a dades

Components d'accés a dades Unitats Teoria Exercicis
Jupyter Notebooks jupyter
Recuperar informació d'una font oberta opendata bicing
Recuperar informació d'una API APIs A4-1
Recuperar informació mitjançant un webcrawler webcrawler
Treball Final d'accés a dades

Primers passos amb python

  1. Introducció a Python

  2. Python2 vs Python3

  3. Instal·lació de Python3

    • Instal·lació en Linux Debian/Ubuntu
    • Instal·lació en altres distribucions Linux
    • Instal·lació en Windows
    • Instal·lació en Mac
  4. Entorns de desenvolupament i editors de text

    • IDE Python
    • Editors de texts
    • IDE us Editors de text
    • Característiques dels editors de texts
    • Configuració de Visual Studio Code
    • Extensions de Visual Studio Code
    • Virtual Environments
      • Virtualenv
      • Anaconda
  5. El meu primer programa en Python3

    • Us de l'intèrpret
    • Escrivim un programa
    • Execució de programes utilitzant shebang
    • Guía de estil
    • Algorísmica
    ________________________________________
     
     Estructura del llenguatge
    _________________________________________
  6. Estructura del programa

    • Estructura de programa
    • Els comentaris
    • Paraules reservades
    • Exemple
  7. Funcions i constants predefinides

    • Funcions predefinides
    • Alguns exemples de funcions
    • Constants predefinides: False,True,None, ...
    • Ajuda, función help()
  8. Dades

    • Literals, variables i expressions
    • Definició, borrat i àmbit de variables
    • Operadors. Precedencia d'operadors
    • Funció eval()
  9. Tipus de dades

    • Classificació de tipus de dades
    • Funció type()
    • Funció isistance()
  10. Treballant amb variables

    • ¿Qué es el tipat dinàmic?
    • Objectes inmutables i mutables
    • Funció id()
    • Operadors d'identitat
    • Operadors d'assignació
    • Assignació múltiple
  11. Entrada i sortida estàndar

    • Funció input
    • Funció print
    • Formatejant cadenes de caràcters
    • Funció format()
    ________________________________________
     
     Tipus de dades numèriques
    _________________________________________
  12. Tipus de dades numèriques

    • Enters
    • Reals
    • Complexes
    • Operadors aritmètics
    • Funcions predefinides que treballen amb números
    • Operadors a nivell de bit
    • Conversió de tipus
  13. Tipus de dades booleanes

    • Tipus booleà
    • ¿Quins valors s'interpreten com FALS?
    • Operadors booleans
    • Operadors de comparació
    • Funcions all() y any()
  14. Exercicis de programació senzills

    _____________________________________________________
    
    Estructures de control Alternatives/Condicionals (IF)
    ______________________________________________________
  15. Estructura de control: Condicionals

    • Condicionals simples
    • Condicionals dobles
    • Condicionals múltiples
    • Expressió reduïda del if
    • Expressió match/else
  16. Exercicis de condicionals

    _____________________________________________________
     
    Estructures de control Repetitives (WHILE / FOR)
    ______________________________________________________
  17. Estructura de control: Repetitives

    • while
    • for
    • Instruccions break, continue i pass
    • Recorregut amb varies sequències. Funció zip()
  18. Exercicis de repetitives

    _____________________________________________________
     
    Tipus de dades seqüència
    ______________________________________________________
  19. Tipus de dades seqüència

    • Enumeració dels tipus seqüència
    • Característiques principals de las seqüències
  20. Tipus de dades seqüència: llistes

    • Construcció d'una llista
    • Operacions bàsiques amb llistes
    • Les llistes son mutables. ¿Com es copien les llistes?
    • Llistes multidimensionals
  21. Mètodes principals de llistes

    • Mètodes d'inserció: append, extend, insert
    • Mètodes d'eliminació: pop, remove
    • Mètodes d'ordenació: reverse, sort,
    • Mètodes de cerca: count, index
    • Mètode de copia: copy
  22. Exercicis amb llistes

  23. Operacions avançades amb seqüències

    • Funció map
    • Funció filter
    • Funció reduce
    • list comprehension
  24. Tipus de dades seqüència: Tuples

    • Construcció d'una tupla
    • Empaquetat i desempaquetat de tuples
    • Operacions bàsiques amb tuples
    • Les tuples son inmutables
    • Métodes principals
  25. Tipus de dades seqüència: Rangs

    • Definició d'un rang. Constructor range
    • Recorregut d'un rang
    • Operacions bàsiques amb range
  26. Codificació de caràcters

    • Introducció a la codificación de caracteres
    • La codificación de caracteres en python3
    • Funciones chr() y ord()
  27. Tipus de dades cadenes de caràcters

    • Definició de cadenes. Constructor str
    • Operacions bàsiques amb llistes
    • Les cadenes son inmutables
    • Comparació de cadenes
    • Funcions repr, ascii, bin
  28. Mètodes principals de cadenes

    • Mètodes de format
    • Mètodes de cerca
    • Mètodes de validació
    • Mètodes de sustitució
    • Mètodes d'unió i divisió
  29. Exercicis de cadenes

  30. Tipus de dades binaris: bytes, bytearray

    • Definició de bytes. Constructor bytes
    • Definició de bytearray. Constructor bytearray
    • Operacions bàsiques amb bytes i bytearray
    • Els bytes son inmutables, els bytearray son inmutables
    • Mètodes de bytes i bytearray
    • Mètodes encode(), decode()
  31. Tipus de dades conjunts: set, frozenset

    • Definició de conjunts. Constructor set
    • Definició de frozenset. Constructor frozenset
    • Operacions bàsiques amb set i frozenset
    • Els set son inmutables, els frozenset son mutables
    • Mètodes principals
  32. Tipus de dades iterador i generador

    • Iteradors
    • Funció next(), reversed()
    • Generadors
    _____________________________________________________
     
    Tipus de dades mapes
    ______________________________________________________
  33. Tipus de dades mapa: diccionari

    • Definició de diccionaris. Constructor dict
    • Operacions bàsiques amb diccionaris
    • Els diccionaris son tipus mutables
  34. Mètodes principals de diccionaris

    • Mètodes de eliminació: clear
    • Mètodes de agregat i creació: copy, dict.fromkeys, update, setdefault
    • Mètodes de retorn: get, pop, popitem, items, keys, values
    • El tipus de dades dictviews
    • Recorreguts de diccionaris
  35. Exercicis de diccionaris

    _____________________________________________________
     
    Treballar amb fitxers
    ______________________________________________________
  36. Procés de serialització

    • Seqüència de bytes
    • Procés de serialització
    • Procés de deserialització
  37. Tipus de fitxers

    • Fitxers de texte
    • Fitxers binaris
  38. Treball amb fitxers binaris)

    • Pickle
  39. Treball amb fitxers de texte

    • Fitxers de texte i fitxers binaris
    • Fitxers de texte
      • Funció open()
      • Modes d'accés
      • Codificació de caràcters
      • Objecte fitxer
      • Mètodes principals
      • Recorregut de fitxers
      • Fitxers binaris
  40. Gestionar fitxers CSV

    • Procés de serialització
    • Mòdul csv
    • Llegir fitxers CSV
    • Escriure fitxers CSV
    • Gestionar fitxers CSV amb el mòdul Panda
  41. Gestionar fitxers JSON

    • Mòdul json
    • Llegir fitxers json
    • Escriure fitxers json
    • Pretty Json
  42. Gestionar fitxers XML

    • Mòdul lxml i beautifulsoup
    • Llegir fitxers xml
    • Escriure fitxers xml
    _____________________________________________________
     
    Errors i Excepcions
    ______________________________________________________
  43. Excepcions

    • Errors sintàctics i errors d'execució
    • Gestionant excepcions. try, except, else, finally
    • Obtenint informació de les excpcions
    • Propagant excepcions. raise
    _____________________________________________________
     
    Móduls, paquets i namespaces
    ______________________________________________________
  44. Móduls i paquets

    • Móduls, paquets
    • Executant móduls amb scripts
    • Important móduls: import
    • Namespace i alias
    • Important elements d'un mòdul: from...import
    • Important mòduls des de paquets
    • Función dir()
    • ¿On es troben els mòduls?
  45. Mòduls estàndards: mòduls de sistema

    • Mòdul os
    • Executar comandes del sistema operatiu. Mòdul subprocess
    • Mòdul shutils
    • Mòduls sys
    • Execució de scripts amb arguments
  46. Mòduls estàndards: mòduls matemàtics

    • Mòdul math
    • Mòdul fractions
    • Mòdul statistics
    • Mòdul random
  47. Mòduls estàndards: móduls d'hora i data

    • Mòdul time
    • Mòdul datetime
    • Mòdul calendar
    • Exemples
  48. Instal·lació de mòduls no estàndards

    • PyPI i pip
    • Instal·lació de mòduls python
    • Creant entorns virtuals amb virtualenv
    • Creant entorns virtuals amb venv
    • Instal·lant paquets al nostre entorn virtual
    _____________________________________________________
     
    Programació estructurada i modular
    ______________________________________________________
  49. Introducció a les funcions

    • Introducció a la programació estructurada i modular
    • Definició de funcions
    • Àmbit de variables. Sentencia global
    • Paràmetres formals i reals
    • Pas de parámetre per valor o per referencia
    • Crides a una funció
    • args and kwargs in Python
  50. Conceptes avançats sobre funcions

    • Tipus d'arguments: posicionals o keyword
    • Parámetre *
    • Arguments arbitraris (*args y **kwargs)
    • Desempaquetar arguments: passar llistes i diccionaris
    • Retornar múltiples resultats
  51. Tipus especials de funcions

    • Funcions recursives
    • Funcions lambda
    • Decoradors
    • Funcions generadores
  52. Exercicis amb funcions

  53. Exercicis Programació estructurada i modular

    _____________________________________________________
     
    Programació orientada a objectes POO
    ______________________________________________________
  54. Programació orientada a objectes

    • Introducció a la Programació Orientada a Objectes
    • Definició de classe, objecte, atributs i mètodes
    • Atributs d'objetos
    • Mètode constructor init
    • Definint mètodes. El paràmetre self
    • Definició d'objectes
  55. Conceptes avançats de programació orientada a objectes I

    • Atributs de classe (estàtics)
    • Atributs privats i ocults
    • Mètodes estátics
    • Mètodes de classe (estàtics)
    • Funcions getattr,setattr,delattr,hasattr
  56. Conceptes avançats de programació orientada a objectes II

    • Propietats: getters, setters, deleter
    • Representació d'objetes __str__ y __repr__
    • Comparació d'objectes __eq__
    • Operar amb objectes __add__ y __sub__
    • Més mètodes especials
  57. Polimorfisme, herencia i delegació

    • Polimorfisme
    • Herència
    • La funció super()
    • Herencia múltiple
    • Funcions issubclass() y isinstance()
    • Delegació
  58. Exercicis Programació orientada a objectes

    _____________________________________________________
     
    Crear un programa executable
    ______________________________________________________
  59. Creació d'un executable a partir d'un script de python amb Pyinstaller

    • Utilització de Pyinstaller
    • Utilització de py2exe
  60. Creació d'un executable a Linux

    • Scripts en Linux
    _____________________________________________________
     
    Treballar amb Bases de Dades (BDR,BDOR,BDOO)
    ______________________________________________________
  61. Drivers i connectors de BD

    • Què és un connector?
    • Connectors als principals SGBR en Python
    • ODBC i JDBC
  62. ORM

  63. Connectar a BD XML

    • MongoDB
    _____________________________________________________
     
    Treballar amb dades - DataScience
    ______________________________________________________
  64. Eines per treballar amb dades

    • Jupyter Lab
    • Jupyter Notebook
    • Jupyter Voilà
  65. Data Management

    • Normalització de dades
  66. Llibreria Pandas

    • Instal·lació
    • Ús
  67. Extracció de dades de la web

    • Web Scraping i Web Crawling
      • Navegadors web i HTTP
      • Scraping i parsing de webs HTTP
      • Web Crawlers
      • Scraping amb Selenium
      • Exemples
  68. Microsoft Power BI i Python

    _____________________________________________________
     
    Creació un entorn de proves
    ______________________________________________________
  69. Creació d'un entorn de proves/curs

    • Utilització de la llibreria pytest
    _____________________________________________________
     
    Utilització del modul logging DEBUG/INFO
    _____________________________________________________
  70. Logging i debugging de l'aplicació

    • Utilització de la llibreria logging
    _____________________________________________________
     
    Desenvolupament d'aplicacions en entorn gràfic
    _____________________________________________________
  71. Introducció al entorn gràfic

    • Tkinter
    • wxPython
    • PyQt
    • Kivy
    _____________________________________________________
     
    Desenvolupament d'aplicacions en entorn web
    _____________________________________________________
  72. Introducció a Django

  73. Descripció de les APIS

    • Qué son
    • Funcionament
    • Seguretat
    • REST APIs vs SOAP API
  74. REST API: Consumició amb el modul requests

    • Amb el mètode GET
    • Amb el mètode POST
  75. REST API: Exemples de consumició d'una API

  76. REST API: Creació d'una API

    _____________________________________________________
     
    Intel.ligència artificial i Machine Learning
    _____________________________________________________
  77. Què és la Intel.ligència artificial

    • Aprenentatge supervisat
    • Aprenentatge automàtic
    • Aprenentatge semisupervisat
  78. Algoritmes bàsics de IA

    • Algorismes de regresió
    • Algorismes basats en arbres de decisió
    • Algorismes de clustering
    • Algorismes de xarxes neuronals
  79. Machine learning

    • Algorismes de Natural Language
    • Algorismes de Image recognition
    _____________________________________________________
     
    Creació de Videojocs
    _____________________________________________________
  80. Creació de videojocs

    • Llibreria pygame
    _____________________________________________________
     
    MarkDown
    _____________________________________________________
  81. Treballant amb Markdown

    _____________________________________________________
     
    BOTS
    _____________________________________________________
  82. BOTS

    • BOTS amb TELEGRAM
    _____________________________________________________
     
    Exercicis variats de programació
    _____________________________________________________
  83. Exercicis Simples

    Nivell bàsic:

    Nivell Mig

    HPCDS Codewars

  84. Recursos de Python a la Web


About

Curs d'introducció a python per M06-Accés a Dades - CFGS DAM

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published