Sunteți pe pagina 1din 11

Introducere în Programare

I/O, Fișiere
Input

input(prompt)

Obține intrarea utilizatorului până când se apasă tasta ENTER; o


returnează ca un șir (fără nicio linie nouă). Dacă există un
prompter, rezultatul este imprimat pe linia de prompter
curentă.
Standard input/output
Fișierul standard de intrare este stdin (uzual tastatura), iar cel de
ieșire este stdout (uzual ecranul).
În general, transferul informațiilor (între programe sau între
programe și memorie internă sau externă se face prin intermediulașa
ziselor stream-uri ( streams ) - obiecte flux.

Stdin și stdout pot fi privite ca stream-uri de la tastatură la program


respectiv de la program către ecran.

Există și stderr pentru transmiterea mesajelor eroare, de asemenea în


mod uzual către ecran.
Fișiere: open, close
Pentru a “deschide” un fișier (în modul citire) se folosește funcția open iar metoda close()
“închide” fișierul:

f = open("geo1.txt")
for line in f:
print(line)
f.close()

Fișierul geo1.txt există și are conținutul:

Universitatea Alexandru Ioan Cuza


Facultatea de Geografie
Master Geomatică
Lista studenților din anul I
1. BÂRZU OANA
2. BEJENARU MIRELA-ALINA
3. BUTNARU MARIAN
Fișiere: open, close
Rezultatul execuției:

f = open("geo1.txt")
for line in f:
print(line)
f.close()

Universitatea Alexandru Ioan Cuza


Facultatea de Geografie
Master Geomatică
Lista studenților din anul I
1. BÂRZU OANA
2. BEJENARU MIRELA-ALINA
3. BUTNARU MARIAN
Fișiere: open, close
La scriere, funcția open are argumentul ‘w’. Fișierul argument se crează.

antet = ['Universitatea Alexandru Ioan Cuza\n',


'Facultatea de Geografie\n',
'Master Geomatică\n',
'Lista studenților din anul I\n']
studenti = ['1. BÂRZU OANA\n',
'2. BEJENARU MIRELA-ALINA\n',
'3. BUTNARU MARIAN\n']
for student in studenti:
antet.append(student);
f = open("lista_studenti.txt", 'w')
for line in antet:
f.write(line)
f.close()
Fișiere: open, close
sau ‘\n’ = caracterul pentru linie nouă):

antet = ['Universitatea Alexandru Ioan Cuza',


'Facultatea de Geografie',
'Master Geomatică',
'Lista studenților din anul I']
studenti = ['1. BÂRZU OANA',
'2. BEJENARU MIRELA-ALINA',
'3. BUTNARU MARIAN’]
for student in studenti:
antet.append(student);
f = open("lista_studenti.txt", 'w')
for line in antet:
f.write(line)
f.write('\n')
f.close()
Fișiere: open, close

Conținutul fișierului lista_studenti.txt, nou creat, este:

Universitatea Alexandru Ioan Cuza


Facultatea de Geografie
Master Geomatică
Lista studenților din anul I
1. BÂRZU OANA
2. BEJENARU MIRELA-ALINA
3. BUTNARU MARIAN
Metode pentru obiecte fișier
f.read()
f.read(size)
f.readline()
f.write('This is a test\n’)
f.tell()
f.seek(offset, from_what). # from_what = 0, 1 sau 2(început, poziția curentă, sfârșit)
f.close()

>>> f = open('workfile', 'rb+')


>>> f.write(b'0123456789abcdef')
16
>>> f.seek(5) # Go to the 6th byte in the file
5
>>> f.read(1)
b'5'
>>> f.seek(-3, 2) # Go to the 3rd byte before the end
13
>>> f.read(1)
b'd'

https://docs.python.org/3.3/tutorial/inputoutput.html#methods-of-file-objects
Atribute pentru obiecte fișier

file.closed returnează true daca fișierul este


închis, false altfel.
file.mode returnează modul de acces în care a
fost deschis fișierul.
file.name returnează numele fișierului.
open(filename, mode)

filename = Numele fișierului

mode = caracter care specifică modul de deschidere (implicit text):


citire (‘r’), scriere (‘w’),citire și scriere (‘r+’), adăugare (‘a’)

mode este opțional - implicit este ‘r’

Un fișier se poate deschide și în modul binar: ‘br’, ‘br+’, ‘bw’, ‘ba’

https://docs.python.org/3/library/functions.html#open

S-ar putea să vă placă și