Fájl megnyitás módjai
A fájlkezelés a Pythonban lehetővé teszi, hogy különböző fájlműveleteket végezzünk, mint például fájl megnyitása, olvasása, írása vagy törlése. A legegyszerűbb módja a fájlkezelésnek a Pythonban az open() beépített függvény használata, amely egy fájl objektumot ad vissza12. Az open() függvénynek két paramétere van: a fájl neve és a megnyitás módja. A megnyitás módja lehet olvasás (‘r’), írás (‘w’), hozzáfűzés (‘a’) vagy mindkettő (‘r+’).
Az “r” mód a fájl megnyitásának alapértelmezett módja, és az olvasásra (read) utal. Ezzel a móddal megnyithatjuk a fájlt és elolvashatjuk annak tartalmát, de nem tudunk beleírni. Ha megpróbálunk írni egy “r” móddal megnyitott fájlba, akkor hibát kapunk. Például:
with open('jungle.txt', 'r') as f:
data = f.read()
print(data)
Ez a kód kiírja a ‘jungle.txt’ fájl tartalmát.
Vagy például, ha egy ‘jungle.txt’ nevű szövegfájlt szeretnénk létrehozni és beleírni a ‘lion’ szót, akkor a következő kódot használhatjuk:
with open('jungle.txt', 'w') as f:
f.write('lion')
A with kulcsszó segítségével automatikusan bezárjuk a fájlt a blokk végén, így nem kell aggódnunk az erőforrások szabadon hagyásáról.
A szöveg fájl így fog ki nézni:
lion
Ha egy már létező fájlhoz szeretnénk hozzáfűzni valamit, például a ‘tiger’ szót, akkor az ‘a’ módot használhatjuk:
with open('jungle.txt', 'a') as f:
f.write('tiger')
Az “a” a hozzáfűzés módját jelöli a fájl megnyitásakor. Ez azt jelenti, hogy ha egy már létező fájlhoz szeretnénk írni valamit, akkor az “a” móddal megnyitva nem felülírjuk a fájl tartalmát, hanem hozzáadjuk a végéhez. Így nem veszítjük el az eredeti adatokat. Az “a” mód csak írásra engedélyezett, olvasásra nem. Ha egy olyan fájlt próbálunk megnyitni “a” móddal, ami még nem létezik, akkor a Python automatikusan létrehozza azt.
Például, ha van egy ‘animals.txt’ nevű fájlunk, amiben ezek a sorok vannak:
cat
dog
És ezt a kódot futtatjuk:
with open('jungle.txt', 'a') as f:
f.write('tiger')
A fájl tartalma így fog kinézni:
cat
dog
tiger