Python 3 per a no programadors/Introducció

Tot al seu temps

modifica

Així que no heu programat mai... A mesura que avancem en aquest tutorial, intentarem ensenyar-vos a programar. Vosaltres heu de llegir codi i escriure codi (així anomenem els programes). Veurem un munt de codi. Hauríeu de copiar aquest codi, provar-lo i veure que passa. Jugueu-hi i feu-hi canvis. El pitjor que us pot passar és que no funcioni. Quan posem codi, estarà formatat de la següent manera:

##El Python és molt fàcil
print("Hola, món!")

Això és per a fer-lo més fàcil de distingir de la resta del text. Si ho esteu llegint per internet, veureu que el codi surt en colors, això és per a destacar-lo i per a fer-lo més llegible. Quan entreu el codi al vostre editor, possiblement no estigui marcat en colors, o aquests poden ser diferents; això no modifica el codi mentre el copieu exactament com és aquí.

Si l'ordinador imprimeix alguna cosa, ho formatarem així:

Hola, món!

(Tingueu en compte que amb text imprès ens referim a text en pantalla i no té res a veure amb la impressora. Abans que els ordinadors tinguessin pantalles, la sortida es feia en paper, i d'aquí el nom de la funció)

Tingueu en compte també que això és un tutorial de Python 3.0, el que vol dir que alguns exemples no funcionaran en la versió 2.6 o anteriors. Igualment, ja que Python 3.0 va ser alliberat el 3 de desembre del 2008, algunes de les llibreries extra encara no han estat convertides. Tanmateix, les diferències entre ambdues versions no són especialment grans, per tant, si n'apreneu una, hauríeu de poder entendre programes escrits per a l'altra sense massa dificultat.

Sovint en els exemples hi haurà una barreja de text que heu d'escriure (que posarem en negreta) i el text que escriu el programa, quedant una cosa com aquesta:

Ei!
Com et dius? Joan
Pots passar, Joan

(Si trobeu algun exemple que no segueixi aquest format, esteu convidats a canviar-ho)

Així doncs, passem a coses més importants. Per a poder programar en Python necessiteu l'intèrpret de Python 3.0 (per entendre'ns, el programa que farà funcionar el vostre codi). Si no el teniu instal·lat, aneu a al lloc web de Python(anglès) i baixeu la versió apropiada per a la vostra pataforma i instal·leu-la (Si esteu fent servir una distribució GNU/Linux segurament podeu saltar-vos aquest pas ja que és possible que ja el tingueu instal·lats, vegeu més avall per a més informació).

Instal·lar Python

modifica

Per a programar en Python es necessita una instal·lació de l'intèrpret Python i un editor de text. Python ve amb el seu propi editor integrat (IDLE), que és molt agradable i totalment suficient per a començar a programar. A mesura que s'avanci en la programació , és probable que canviï a alguns altres editors: com l'editor emacs, vi o altre.

La pàgina de descàrregues de Python és http://www.python.org/download. Hi trobareu diferents paquets d'instal·lació per a diferents plataformes.

En aquest tutorial ens referim a la versió 3.0 de Python i és possible que alguns del programes aquí exposat no funcionin correctament en versions anteriors.

Linux, BSD i usuaris Unix

modifica

Si esteu de sort, Python ja és instal·lat en el vostre maquinari. Comproveu-ho tot teclejant python3.0 a la línia d'ordres. Si veieu quelcom semblant al que es mostra en la secció següent ja el teniu instal·lat.

Si ha d'instal·lar Python, en primer lloc tracteu d'utilitzar el Gestor de paquets del sistema operatiu o anar al Repository en el que els paquets estan disponibles i obteniu Python 3.0. Per tal de complicar més les coses podria ser que la vostra distribució no disposes encara de Python (es va llançar al desembre 2008) així doncs potser haureu de compilar Python des de zero després de descarregar el codi font.

Si es el cas un indiquem, en grans trets, els passos per compilar Python a Unix:

  • Descarregueu el fitxer .tgz (Utilitzeu el navegador per a descarregar el fitxer tar comprimit amb gzip de http://www.python.org/download/releases/3.0/ )
  • Descomprimiu el fitxer tar (Indicant el directori on l'heu descarregat):
$ tar -xvzf ~/Download/Python-3.0.tgz
... Llista d'arxius que es van descomprimint 
  • Canvieu de directori i indiqueu les ordres de compilació i instal·lació
$ cd Python-3.0/
$ ./configure --prefix=$HOME/python3_install 
 ... moltes línies. Observeu si apareix algun missatge d'error ... 
$ make
 ... més línies.  Amb sort sense missatges d'errorHopefully no error messages ... 
$ make install
  • Afegiu python 3.0 al vostre path. Podeu provar, abans, especificant la ruta complerta. Haurieu d'afegir $HOME/python3_install/bin al la vostra variable PATH del bash.
$ ~/python3_install/bin/python3.0
Python 3.0 (r30:67503, Dec 29 2008, 21:31:07) 
[GCC 4.3.2 20081105 (Red Hat 4.3.2-7)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

Les ordres anteriorment descrites instal·len python en el directori home. Si no empreu --prefix, Pithon s'instal·larà a /usr/local.

Si voleu emprar l'editor IDLE, cal tenir instal·lats tk i tcl, i els seus arxius de desenvolupament; si no els teniu instal·lats durant la execucuó del make es mostrarà una alerta.

Usuaris de Mac

modifica

Des de Mac OS X (Tiger), Python és integrat en el sistema operatiu, no obstant és possible que necessiteu actualitzar-lo a la versió 3.0 (podeu comprovar la versió tot teclejant python3.0 en la línia de ordres de terminal). Així mateix l'editor de Python pot ser que no estigui present en una instal·lació estandar. Si heu de (re-)instal·lar Python, el trobareu a Pàgina de descarrega per a Mac de Python.

Usuaris Windows

modifica

Descarregueu l'instal·lador Windows apropiat, executeu-lo i seguiu les indicacions.

Mode Interactiu

modifica

Executeu l'IDLE (també anomenat Python GUI). Us apareixerà un text similar al següent:

Python 3.0 (r30:67503, Dec 29 2008, 21:31:07) 
[GCC 4.3.2 20081105 (Red Hat 4.3.2-7)] on linux2
Type "copyright", "credits" or "license()" for more information.

    ****************************************************************
    Personal firewall software may warn about the connection IDLE
    makes to its subprocess using this computer's internal loopback
    interface.  This connection is not visible on any external
    interface and no data is sent to or received from the Internet.
    ****************************************************************
    
IDLE 3.0      
>>> 

El >>> indiquen que esteu en mode interactiu, en aquest el que teclejeu es executat immediatament. Proveu de teclejar 1+1 en ell: us retornarà la resposta 2.

El mode interactiu ens permet provar i veure resultats de forma immediata, fet que ens permet observar i provar diferents instruccions per tal de poder conèixer els seus resultats.

Creant i executant programes

modifica

Entreu a l'IDLE . En els menús de la part superior, seleccioneu File i New Window. Us apareix una nova finestra; en aquesta teclegeu:

print("Hola, Món!")

Ara guardeu el programa: Trieu File del menú, i Save. Guardeu-lo com "hola.py" (es pot guardar en qualsevol directori que desitgeu). Un cop guardat podem executar-lo.

Per a executar un programa accedirem al menú Run i Run Module (En versions anteriors de l'IDLE hauriem de triar Edit i Run script). L'execució mostrarà Hola, Món! en la finestra del *Python Shell*.

nota: per a una introducció en més profunditat vers l'editor integrat IDLE podeu consultar http://hkn.eecs.berkeley.edu/~dyoo/python/idle_intro/index.html

nota: compte que en desar, l'IDLE no posa per defecte als fitxers l'extensió .py . Sense aquesta extensió els programes funcionen igual, però algunes ajudes d'edició de l'IDLE es desactiven (per exemple, el text no s'acoloreix segons el tipus de paraula).

Nomenclatura dels arxius de programa

modifica

És força útil tenir en compte un seguit de convencions en la manera de nomenar els programes. Si bé aquest fet no és tan important quant als programes, sí que és més critic quant als mòduls.

  1. El codi sempre ha d'ésser guardat amb l'extensió .py. el nom del fitxer no ha de contenir cap altre punt.
  2. Empreu només caràcters estandar : lletres, numeros, guió (-) i subratllat(_).
  3. No empreu espais en blanc (" ")(podeu emprar el subratllat com alternativa).
  4. Comenceu sempre el nom amb una lletra (sobretot no empreu números!)
  5. No empreu accents ni caràcters especials.

Emprar Python des de la línia d'ordres

modifica

Podeu executar programes sense haver d'entrar al IDLE, així podeu editar un programa en Python en un editor de text i després el podeu executar tot teclejant python3.0 nom_del_programa.

Hi han diferents editors de text que faciliten l'escriptura en Python, Emacs n'és un bon exemple. Si empreu Vim es recomanable visitar emprant vim com a IDE de Python

Executar programes Python en Unix

modifica

Si esteu emprant Unix (com ara Linux, Mac OSX o BSD), si heu fet el programa en chmod, i teniu com a primera línia:

#!/usr/bin/env python3.0

podeu executar el programa tot teclejant ./hello.py com qualsevol altra ordre.

On trobar ajuda

modifica

És molt probable que tot programant en python us trobeu en situacions que no sabeu com resoldre. Aquest tutorial tan sols intenta mostrar-vos els conceptes bàsics del llenguatge, però hi ha una gran quantitat d'informació disponible que pot permetre que resolgueu l'atzucac en què us podeu trobar.

Documentació de Python

modifica

En primer lloc la documentació de Python és força completa i es subministra en la instal·lació del programa:

  • EL Tutorial Python 3.0 per Guido van Rossum és, sovint, un bon punt d'inici fer a qüestions generals.
  • Per a dubtes vers els mòduls estandars (més endavant us explicarem què son), la Python 3.0 Library Reference ens proporciona informació
  • El Python 3.0 Reference Manual ens proporciona més informació comprensible, si bé que aquesta pot ser un xic complexa per a principiants.

Comunitat d'usuaris de Python

modifica

Hi ha un munt d'altres usuaris de Python pel món aquí, i en general (si bé que un xic rarets) són agradables i estan disposats a ajudar. Aquesta comunitat d'usuaris s'organitza principalment a través de llistes de correu i un grup de notícies:

  • El tutor mailing list és per a gent que vol fer preguntes sobre com aprendre programació d'ordinadors amb el llenguatge Python.
  • El python-help mailing list es el canal d'ajuda(help desk) de python.org. Permet demanar a un grup de voluntaris amb coneixements preguntes sobre tots els nostres problemes de Python.
  • El grup de Notícies comp.lang.python (Google groups archive) és el lloc per a discussions generals de Python, les preguntes i el punt de trobada de la comunitat.

No obstant, procureu no abusar massa d'ells abans de preguntar proveu de fer una recerca per internet per tal de mirar si ja hi ha una solució al vostre problema.