Python: introducció ràpida

De Cacauet Wiki
Salta a la navegació Salta a la cerca

Per començar a programar en Python i coneixent pràviament les bases de l'algorismica, us proposo uns consells ràpids:

Consola i scripts

Python és un llenguatge interpretat i es pot invocar la consola des de la shell:

enric@pepino:~$ python
Python 2.7.3 (default, Apr 20 2012, 22:44:07) 
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> a=1
>>> print a
1

Si volem fer un script (arxiu .py) es pot executar:

  1. Cridant el fitxer de text (script) amb l'intèrpret:
     $ python elmeuscript.py
  2. Executant-ho com un shell script: cal insertar una línia al principi del script amb la ruta a l'intèrpret i necessitarà permisos d'execució.

Shell script

Creem l'arxiu:

#!/usr/bin/python
i = 7
print i

canviem permisos i l'executem:

$ chmod 755 elmeuscript.py
$ ./elmeuscript.py

Accents i demés: codificació UTF-8 de l'arxiu

Python no ens deixarà posar accents i caràcters especials. Si volem poder treballar amb cadenes en el nostre idioma convé canviar-ho al principi de l'arxiu amb:

#!/usr/bin/python
# -*- coding: utf-8 -*-
print "mira què bé"

Si no posem la 2a línia, el script ens donarà un error en executar-ho.


Blocs per indentació, res de claus {}

Els blocs de sentències funcionen amb indentació (és a dir, tabuladors/espais al principi de línia), el que és molt adequat per establir un estil clar i net de programació.

De pas: observa (1) l'assignació múltiple, (2) el condicional i (3) els booleans son amb majúscula (True i False):

a , b = 1, 2
if a == b:
   print "son iguals"
   c = True
else:
   print "son diferents"
   c = False

Cal tenir en compte que:

  • Els inicis de bloc els marquen els dos punts ":" de les sentències de control (condicionals, bucles) i de les funcions.
  • Tant ens fa posar un tabulador com 3 o 4 espais, la única regla és que la indentació sigui coherent al llarg del bloc.
  • Si estem copiant exemples de tutorials i similars, i després afegim codi, serà convenient ajustar el tipus d'indentació de l'editor per tal que sigui coherent. En el cas de l'editor geany (recomanat) es pot canviar a:
    Document -> Tipus de sagnat


Variables dinàmiques

En Python, igual que en molts llenguatges interpretats, no cal declarar el tipus de les variables. Es pot crear una variable quan es vulgui i del tipus que es vulgui i es pot canviar al llarg de l'execució. Per exemple:

>>> a = 1
>>> type(a), a
(<type 'int'>, 1)
>>> a = "cosa"
>>> type(a), a
(<type 'str'>, 'cosa')


Funcions

Les funcions es defineixen amb la paraula clau def:

def suma(a,b):
	resultat = a + b
	return resultat
	
print suma(3,6)

Condicionals i bucles

...