Python és un llenguatge de programació d'alt nivell i propòsit general molt utilitzat en la ciència, l'anàlisi de dades i la intel.ligència artificial.
Fonaments
El propòsit inicial dels computadors era computar números.
Un algoritme és un conjunt de sentències en que alguns blocs s'executen de manera seqüencial, selectiva o repetitiva.
Una seqüència és un conjunt d'elements agrupats un a continuació de l'altre.
Unes dades (o "data") és un un conjunt de valors que estan relacionats i que es gestionen com un conjunt.
Les funcions son blocs de codi que es poden reutilitzar en altres parts del codi.
undefined
Python utilitza "duck typing", pero també pots utilitzar "nominative typing" per validar codi.
Els mòduls contenen un conjunt de funcions, variables o classes per a poder-los usar en qualsevol programa.
undefined
Input/Output

JSON es un formato de texto que permite representar cualquier estructura de datos.
Llegir i editar fitxers de text amb Python és molt senzill, fins i tot si venen comprimits. També veurem com controlar les possibles excepcions durant l'accés als fitxers.
HTTP et permet accedir a dades a través d'Internet
Pydantic valida i serialitza de manera automàtica les dades JSON que consumeixes o produeixes.
Desenvolupament
Existeixen moltes extensions dissenyades per crear un entorn de desenvolupament complet en Python.
Poetry és una eina de gestió de dependències i creació de biblioteques.
Un codi ha de tenir un conjunt de proves automatitzades que et permeten dissenyar nou codi i poder modificar codi verificant que tot segueix funcionant correctament.
undefined
Refactoritzar és modificar el codi perquè tingui una altre estructura, però que segueixi fent el mateix.
undefined
Web
FastAPI és framework web per crear APIs amb Python basat en l'estàndar de "type hints" de Python.
Integració d'un server amb Python i un client amb Typescript.
Anàlisi de dades

Numpy és una biblioteca que ens permet gestionar matrius, tipat estàtic i realitzar càlculs científics. Moltes llibreries potents de Pyhton requereixen importar Numpy.
Matplotlib és una biblioteca que serveix per dibuixar figures, funcions i tot tipus de gràfiques en imatges estàtiques.
Pandas proporciona estructures de dades tabulades per a gestionar grans volums de dades de forma eficient. Permet ordenar, agrupar i obtenir estadístiques fàcilment.
Estadística descriptiva, mesures de centralització, dispersió, outliers, correlació entre variables i corbes distribució. Amb gràfics per il·lustrar tots els conceptes.
Polars is an open-source library for data manipulation, known for being one of the fastest data processing solutions on a single machine. It features a well-structured, typed API that is both expressive and easy to use.
Patito offers a simple way to declare pydantic data models which double as schema for your polars data frames.
Avançat
undefined
undefined
undefined
undefined

La programación dinámica es un método de resolución de problemas que se basa en resolver el problema a partir de un subproblema más pequeño de forma recursiva hasta encontrar el resultado del subproblema menor.