28.01.2015 Views

Tutorial Python - Starship

Tutorial Python - Starship

Tutorial Python - Starship

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

table = {’Sjoerd’: 4127, ’Jack’: 4098, ’Dcab’: 7678}<br />

>>> for name, phone in table.items():<br />

... print ’%-10s ==> %10d’ % (name, phone)<br />

...<br />

Jack ==> 4098<br />

Dcab ==> 7678<br />

Sjoerd ==> 4127<br />

Majoritatea tipurilor de formate funcţionează exact ca în C, şi nu necesită decât transmiterea corectă a operandului<br />

din dreapta. Nerespectarea acestei reguli va genera o excepţie. Specificatorul de format %s este mai flexibil, dacă<br />

parametrul asociat din partea dreaptă nu este de tip şir de caractere, va fi automat convertit la şir de caractere<br />

folosind funcţia integrată str(). Specificatorii de format %u şi %p din C nu sunt acceptaţi şi de <strong>Python</strong>.<br />

Dacă aveţi un şir lung pe care nu doriţi să-l împărţiţi în mai multe şiruri, ar fi interesant să vă puteţi referi la variabile<br />

prin nume în loc de poziţie. Acest lucru poate fi realizat folosind modalitatea numevariabilă format,<br />

ca înurmatorul exemplu :<br />

>>> table = {’Sjoerd’: 4127, ’Jack’: 4098, ’Dcab’: 8637678}<br />

>>> print ’Jack: %(Jack)d; Sjoerd: %(Sjoerd)d; Dcab: %(Dcab)d’ % table<br />

Jack: 4098; Sjoerd: 4127; Dcab: 8637678<br />

Acest lucru se poate dovedi foarte util atunci când doriţi să afişaţi variabilele predefinite folosind funcţia vars()<br />

care întoarce un dicţionar cu toate variabilele locale.<br />

7.2 Citirea şi scrierea fişierelor<br />

Funcţia open() are ca rezultat un obiect de tip fişier, şi este de cele mai multe ori apelată cu doi parametrii:<br />

numele de fişier şi modul de acces la fişier:<br />

>>> f=open(’/tmp/workfile’, ’w’)<br />

>>> print f<br />

<br />

Primul argument este un şir de caractere care conţine numele fişierului ce urmează să fie deschis. Al doilea<br />

argument este tot un şir de caractere ce conţine doar câteva caractere ce descriu modul în care fişierul va fi utilizat.<br />

Modul poate fi:<br />

- ’r’ = fişierul va putea fi numai citit<br />

- ’w’ = fişierul va putea fie doar scris (în cazul în care un fişier există deja, acesta va fi suprascris)<br />

- ’a’ = fişierul va fi deschis pentru actualizare (toate datele scrise vor fi adăugate la sfârşitul fişierului)<br />

- ’r+’ = în fişierul ce va fi deschis se pot executa atât operaţii de scriere cât şi de citire.<br />

Pe Windows şi Macintosh adăugarea caracterului ’b’, la sfârşitul şirului prin care se specifică modul de acces,<br />

indică interpretorului <strong>Python</strong> să deschidă fişierul în mod binar. Există deci modurile de acces ’rb, ’wb’, ’r+b’.<br />

Windows face distincţie între fişierele de tip text şi cele binare: caracterele de sfârşit de linie sunt modificate<br />

atunci când se scriu sau se citesc date. Aceaste modificări ”din spatele scenei” sunt binevenite în cazul fişierelor<br />

text, dar nu pot face decât rău în cazul fişierelor binare cum sunt .JPG sau .EXE de exemplu. Aveţi deci grijă să<br />

folosiţi modul binar când lucraţi cu astfel de fişiere.<br />

7.2. Citirea şi scrierea fişierelor 47

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!