Benvingut al curs de Programació en Python. En aquesta primera lliçó descobriràs què és Python, d'on ve, què el fa especial respecte d'altres llenguatges i en quins àmbits s'utilitza avui dia. També escriuràs (o si més no llegiràs i entendràs) la teva primera línia de codi, i coneixeràs el projecte que ens acompanyarà durant tot el curs: Papyrus, una llibreria de barri que vol digitalitzar la seva gestió. Entendre el context i la filosofia del llenguatge abans d'escriure codi t'ajudarà a prendre millors decisions més endavant, quan el codi es compliqui.

Contingut

  1. Què és Python?
  2. Breu història del llenguatge
  3. Característiques principals
  4. Per a què es fa servir Python al món real?
  5. Avantatges i desavantatges
  6. La teva primera línia de codi: print()
  7. El projecte del curs: la llibreria Papyrus

Què és Python?

Python és un llenguatge de programació de propòsit general: serveix per escriure des de petits scripts d'unes poques línies fins a grans aplicacions web, eines d'anàlisi de dades o sistemes d'intel·ligència artificial.

Els seus trets d'identitat són:

  • Llegibilitat: el codi Python s'assembla força a l'anglès escrit. Es va dissenyar perquè llegir-lo fos gairebé tan fàcil com llegir pseudocodi.
  • Simplicitat: pots aconseguir molt amb poc codi. Tasques que en altres llenguatges requereixen 20 línies, en Python sovint es resolen amb 3 o 4.
  • Comunitat enorme: hi ha milions de programadors que fan servir Python, cosa que es tradueix en documentació abundant, tutorials i llibreries ja escrites per a gairebé qualsevol cosa.

Per fer-te una idea d'aquesta llegibilitat, observa aquest fragment (no et preocupis per entendre'l del tot encara; l'estudiarem peça a peça en les properes lliçons):

llibres = ["El Quixot", "L'Odissea", "Hamlet"]

for llibre in llibres:
    print("Papyrus té en estoc:", llibre)

Encara que no hagis programat mai, probablement intueixes què fa: per a cada llibre de la llista, mostra un missatge. Aquesta intuïció immediata és exactament el que persegueix Python.

Breu història del llenguatge

  • 1989-1991: Guido van Rossum, un programador neerlandès, crea Python durant les seves vacances de Nadal com a projecte personal. El nom no ve de la serp, sinó del grup d'humor britànic Monty Python.
  • 1994: es publica Python 1.0.
  • 2000: arriba Python 2.0, que popularitza el llenguatge.
  • 2008: apareix Python 3.0, una versió que corregeix defectes de disseny però que no és compatible amb Python 2. Durant anys van conviure totes dues branques.
  • 2020: Python 2 deixa de rebre suport oficialment. Avui, tot el desenvolupament nou es fa en Python 3, i és la versió que farem servir en aquest curs.
  • Actualitat: Python encapçala de manera sostinguda els índexs de popularitat de llenguatges (com TIOBE o el rànquing de l'IEEE), impulsat sobretot per la ciència de dades i la intel·ligència artificial.

Important: si en algun tutorial antic veus codi com print "Hola" (sense parèntesis), és Python 2. Ignora'l: en Python 3 això dona error.

Característiques principals

Desgranarem tres termes que veuràs constantment quan es parla de Python. Són conceptes tècnics, però val la pena entendre'ls des del principi.

Python és interpretat

Un ordinador només entén instruccions en codi màquina (uns i zeros). Hi ha dues grans estratègies per traduir un llenguatge de programació a aquest codi màquina:

Estratègia Com funciona Exemples
Compilat Un programa (el compilador) tradueix tot el codi de cop a un executable abans de poder fer-lo servir. C, C++, Go, Rust
Interpretat Un programa (l'intèrpret) llegeix el codi i el va executant línia a línia sobre la marxa. Python, JavaScript, Ruby

Que Python sigui interpretat té conseqüències pràctiques:

  • Cicle de treball ràpid: escrius, executes i veus el resultat a l'instant, sense pas de compilació.
  • Portabilitat: el mateix fitxer .py funciona a Windows, macOS o Linux, sempre que hi hagi un intèrpret de Python instal·lat.
  • Menys velocitat d'execució: en traduir sobre la marxa, un programa Python sol ser més lent que el seu equivalent en C. Per a la majoria d'aplicacions (i sens dubte per a la gestió d'una llibreria com Papyrus) aquesta diferència és irrellevant.
flowchart LR
    A["Codi font\n(fitxer .py)"] --> B["Intèrpret de Python"]
    B --> C["Execució línia a línia\n(resultat immediat)"]

Python és multiparadigma

Un paradigma de programació és un estil o manera d'organitzar el codi. Python no t'obliga a fer-ne servir un de concret; en suporta diversos:

Paradigma Idea central On el veuràs en aquest curs?
Imperatiu/procedimental Instruccions pas a pas, agrupades en funcions. Mòduls 1 a 4
Orientat a objectes El codi s'organitza en classes i objectes que combinen dades i comportament. Mòdul 5
Funcional Es treballa amb funcions que transformen dades, evitant modificar estat. Funcions lambda (mòdul 3), comprensions (mòdul 2)

Això és un avantatge per a l'aprenentatge: començaràs escrivint scripts senzills pas a pas, i només quan ho necessitis faràs el salt a tècniques més avançades.

Python té tipatge dinàmic

En programació, el tipus d'una dada indica quina classe de valor és: un nombre enter, un text, un valor cert/fals... En alguns llenguatges (tipatge estàtic) has de declarar el tipus de cada variable per endavant i aquest no pot canviar. En Python (tipatge dinàmic) no cal:

preu = 18          # ara conté un nombre enter
preu = "divuit"    # ...i ara un text, sense que Python protesti
  • Avantatge: escrius menys i el codi és més flexible.
  • Risc: alguns errors de tipus només es descobreixen en executar el programa, no abans. (Al mòdul 8 veuràs les anotacions de tipus, que ajuden a mitigar-ho.)

Convé aclarir que Python és dinàmic però fortament tipat: no barreja tipus a la lleugera. Per exemple, sumar un nombre i un text (3 + "llibres") produeix un error en lloc d'un resultat sorprenent.

Per a què es fa servir Python al món real?

Python és pràcticament a tot arreu. Alguns àmbits destacats:

  • Ciència de dades i intel·ligència artificial: és el llenguatge dominant. Llibreries com NumPy, Pandas o scikit-learn (mòdul 11) l'han convertit en l'estàndard de facto.
  • Desenvolupament web: frameworks com Flask i Django (mòdul 10) mouen llocs com Instagram o Pinterest.
  • Automatització i scripting: canviar el nom de mil fitxers, generar informes, enviar correus automàtics... Python és la navalla suïssa de l'automatització de tasques.
  • Educació: per la seva senzillesa, és el llenguatge d'introducció a la programació en moltes universitats.
  • Aplicacions d'escriptori, videojocs, sistemes encastats: menys habitual, però també possible.

Empreses com Google, Netflix, Spotify o la NASA fan servir Python cada dia en producció.

Avantatges i desavantatges

Cap llenguatge no és perfecte. Un bon professional coneix les fortaleses i les limitacions de la seva eina:

Avantatges Desavantatges
Sintaxi clara i fàcil d'aprendre Més lent que els llenguatges compilats (C, C++, Rust)
Enorme ecosistema de llibreries per a gairebé tot Consum de memòria elevat en comparació amb llenguatges de baix nivell
Comunitat gegant: documentació i ajuda abundants Poc habitual en desenvolupament mòbil natiu
Multiplataforma (Windows, macOS, Linux) El tipatge dinàmic pot amagar errors fins a l'execució
Productivitat alta: prototips en hores, no en setmanes Limitacions històriques de paral·lelisme (ho matisarem al mòdul 8)

Per al nostre objectiu —aprendre a programar i construir un sistema de gestió per a una llibreria— els desavantatges gairebé no pesen, i els avantatges són decisius.

La teva primera línia de codi: print()

La tradició mana que el primer programa en qualsevol llenguatge mostri una salutació per pantalla. En Python, mostrar alguna cosa per pantalla es fa amb la funció print():

print("Hola, món!")

Analitzem aquesta línia peça a peça:

  • print és el nom d'una funció: una ordre amb nom que Python ja porta incorporada. La seva feina és mostrar per pantalla el que li passis.
  • Els parèntesis ( ) indiquen que estem cridant (executant) la funció, i a dins hi posem el que volem que mostri.
  • "Hola, món!" és una cadena de text: un text literal delimitat per cometes. Les cometes li diuen a Python "això és text, no una ordre".

El resultat en pantalla seria:

Hola, món!

Fixa't que les cometes no apareixen a la sortida: només serveixen per delimitar el text al codi.

Podem anar un pas més enllà i saludar des del nostre projecte:

print("Benvingut a Papyrus, la teva llibreria de barri")
print("Avui és un gran dia per llegir")
Benvingut a Papyrus, la teva llibreria de barri
Avui és un gran dia per llegir

Cada crida a print() escriu el seu contingut i salta a la línia següent. A la propera lliçó instal·laràs Python i podràs executar això tu mateix; de moment, n'hi ha prou que n'entenguis la mecànica.

El projecte del curs: la llibreria Papyrus

Al llarg de tot el curs acompanyarem Papyrus, una petita llibreria de barri regentada per l'Anna, la seva propietària. L'Anna fa anys que gestiona el negoci amb llibretes i fulls solts: l'inventari, els preus, les comandes de clients habituals com en Lluís... i ha decidit fer el salt digital.

La teva missió com a estudiant serà construir, a poc a poc, el sistema de gestió de Papyrus. El pla, a grans trets:

  • Ara (mòdul 1): representar les primeres dades de la botiga —nom, títols de llibres, preus— i mostrar informació per pantalla.
  • Mòduls 2-4: prendre decisions (hi ha estoc?), repetir operacions (recórrer el catàleg) i organitzar les dades en estructures adequades.
  • Mòduls 5-7: modelar llibres i clients com a objectes, desar les dades en fitxers i fer el programa robust davant d'errors.
  • Mòduls 8-11: tècniques avançades, proves automatitzades, una web per a la botiga i anàlisi de les seves dades de vendes.
  • Mòdul 12: el projecte final integrarà tot el que hauràs après.

Començar cada concepte nou amb un exemple de Papyrus et donarà context: no aprendràs "què és una llista" en abstracte, sinó "com deso el catàleg de la botiga". Les dades que farem servir seran sempre fictícies: llibres clàssics de domini públic (L'Odissea, El Quixot, Hamlet...) o títols inventats, i persones fictícies com l'Anna o en Lluís.

Errors Comuns i Consells

  • Estudiar amb material de Python 2: si veus print "Hola" sense parèntesis, o mencions a raw_input(), aquell material és obsolet. Busca sempre recursos de Python 3.
  • Confondre "interpretat" amb "no professional": que Python sigui interpretat no el converteix en un llenguatge de joguina. Sistemes crítics d'empreses enormes funcionen amb Python.
  • Oblidar les cometes a print(): print(Hola) sense cometes provoca un error (NameError), perquè Python busca una variable anomenada Hola en lloc de tractar el text literalment. El text sempre va entre cometes.
  • Voler córrer abans de caminar: és temptador saltar directament a la intel·ligència artificial o al desenvolupament web. Resisteix: els fonaments dels mòduls 1 a 7 són els ciments de tota la resta.
  • Consell: acostuma't des d'ara a llegir codi en veu alta. "Imprimeix la cadena Benvingut a Papyrus" — si pots narrar què fa cada línia, és que l'entens de debò.

Exercicis

Encara no has instal·lat Python (això arriba a la lliçó següent), així que aquests exercicis són de comprensió i de "programar sobre paper". Escriu les respostes abans de mirar les solucions.

Exercici 1

Classifica cada afirmació com a certa o falsa:

  1. Python necessita un pas de compilació previ per poder executar un programa.
  2. En Python, una variable pot contenir primer un nombre i després un text.
  3. Python 2 és la versió recomanada per a projectes nous.
  4. Python només permet programar amb orientació a objectes.

Exercici 2

Escriu (en paper o en un editor de text qualsevol) les línies de codi necessàries perquè un programa mostri exactament aquesta sortida:

Papyrus - Llibreria
Fundada per l'Anna
El seu llibre preferit: L'Odissea

Exercici 3

Observa aquesta línia i explica què fa cadascuna de les seves tres parts (nom, parèntesis, contingut):

print("El Quixot costa 15.90 euros")

Solucions

Solució 1

  1. Falsa. Python és interpretat: l'intèrpret executa el codi línia a línia sense generar abans un executable.
  2. Certa. És el tipatge dinàmic: el tipus va associat al valor, no a la variable.
  3. Falsa. Python 2 va deixar de tenir suport el 2020; tot desenvolupament nou fa servir Python 3.
  4. Falsa. Python és multiparadigma: procedimental, orientat a objectes i funcional.

Solució 2

print("Papyrus - Llibreria")
print("Fundada per l'Anna")
print("El seu llibre preferit: L'Odissea")

Cada print() genera una línia de sortida. El text va sempre entre cometes, i aquestes no apareixen en pantalla.

Solució 3

  • print — el nom de la funció incorporada que mostra text per pantalla.
  • (...) — els parèntesis executen (criden) la funció; a dins hi va el que ha de mostrar.
  • "El Quixot costa 15.90 euros" — una cadena de text: el contingut literal que es mostrarà, delimitat per cometes.

Conclusió

En aquesta lliçó has situat Python al mapa: un llenguatge interpretat, multiparadigma i de tipatge dinàmic, nascut el 1991 i avui omnipresent en ciència de dades, web i automatització. N'has vist els avantatges (llegibilitat, productivitat, ecosistema) i els límits (velocitat), has entès la teva primera instrucció —print()— i has conegut l'Anna i la seva llibreria Papyrus, el projecte que anirem construint junts.

A la propera lliçó, Configuració de l'Entorn de Desenvolupament, instal·laràs Python al teu ordinador, provaràs l'intèrpret interactiu i prepararàs un editor professional per poder executar tu mateix tot el codi del curs.

Curs de Programació en Python

Mòdul 1: Introducció a Python

Mòdul 2: Estructures de Control

Mòdul 3: Funcions i Mòduls

Mòdul 4: Estructures de Dades

Mòdul 5: Programació Orientada a Objectes

Mòdul 6: Gestió de Fitxers

Mòdul 7: Gestió d'Errors i Excepcions

Mòdul 8: Temes Avançats

Mòdul 9: Proves i Depuració

Mòdul 10: Desenvolupament Web amb Python

Mòdul 11: Ciència de Dades amb Python

Mòdul 12: Projecte Final

© Copyright 2026. Tots els drets reservats