Table of Contents
Sovint necessitem que els nostres programes interaccionin amb l'usuari. Voldrem obtenir respostes
de l'usuari i escriure-li resultats.
Python ens ofereix les sentències raw_input
i print
.
Per a sortida, disposem d'altres mètodes de la classe string (str
). Per
exemple, podem fer servir el mètode rjust
que ens retorna el string
justificat a la dreta amb una amplada donada. Tindrem més
detalls amb help(str)
.
Un altre tipus habitual d'entrada/sortida és el tractament de fitxers. Per a molts programes és essencial poder crear, llegir i escriure fitxers. Ho estudiarem a aquest capítol.
Per usar fitxers en lectura o escriptura, cal crear un objecte de la classe
file
especificant el mode, i usar els mètodes
read
, readline
o
write
.
Quan acabem de fer servir el fitxer, cal tancar-ho amb el mètode
close
.
Example 12.1. Ús dels fitxers
#!/usr/bin/python # Filename: using_file.py poem = '''\ Programming is fun When the work is done if you wanna make your work also fun: use Python! ''' f = file('poem.txt', 'w') # obrim per escriptura ('w'riting) f.write(poem) # escrivim al fitxer el poema f.close() # tanquem el fitxer f = file('poem.txt') # quan no s'especifica el mode, es suposa que és lectura ('r'ead) while True: line = f.readline() if len(line) == 0: # la longitud zero indica fi del fitxer (EOF) break print line, # Atenció amb la coma per evitar el salt de línia automàtic f.close() # tanquem el fitxer
$ python using_file.py Programming is fun When the work is done if you wanna make your work also fun: use Python!
Primer de tot el programa crea una instància de la classe
file
especificant el nom del fitxer que volem
obrir i el mode (escriptura) en que el volem obrir.
El mode pot ser per lectura ('r'
), per
escriptura ('w'
) o per afegir ('a'
).
En realitat n'hi ha d'altres modes disponibles que podem consultar
amb help(file)
.
Obrim el fitxer en mode escriptura i hi escrivim amb el mètode
write
de la classe file
.
Finalment tanquem el fitxer amb close
.
A continuació, obrim un altre cop el fitxer. Com que no especifiquem el
mode, Python per defecte l'obre per lectura. Llegim cada línia del
fitxer amb el mètode readline
. Aquest mètode
retorna una línia completa incloent el caràcter de salt de línia al
final de la línia. Quan el que ens retorna és un string
buit, sabem que hem arribat al final del fitxer i
sortim del bucle.
Notem que fem servir una coma amb la sentència print
per a evitar que ens inclogui el salt de línia automàtic, donat que la
línia ja inclou el caràcter de salt de línia. Finalment tanquem el fitxer
amb el mètode close
.
Un cop executat podem mirar que el fitxer poem.txt
ha estat creat i efectivament conté el poema.