
Fájl írása Python-ban
Bevezető Python Fájl műveletek
2023. január 13.
A Python nyelven az állományok létrehozása és módosítása is nagyon egyszerű. Most fogok mutatni példát a létrehozásra, a beszúrásra és a teljes tartalom cserére. Viszont ahhoz, hogy ez egyértelműen gyors legyen, ajánlom egy korábbi bejegyzésem az állomány beolvasásáról. Ebben a cikkben is ugyanúgy az open
függvényt fogjuk használni és ennek a segítségével fogjuk az állományokat manipulálni.
Az open
függvény alábbi két módját fogjuk használni.
”a” - append
- Az állomány végére új tartalmat fogunk beszúrni.
”w” - write
- Az állomány teljes tartalmát fogjuk szerkeszteni.
Fontos, hogy mind a két esetben, ha az állomány nem létezik, akkor sincsen gond, mert létre fogja hozni az írás során.
Új sorok hozzáadása
Nézzük először a beszúrást. Hozzuk létre például az append.py
állományt és írjuk be az alábbi kódot.
file = open("minta.txt", "a")
file.write("Ez egy új sor lesz.")
file.close()
Nagyon fontos, hogy minden esetben be kell zárni az állományt, mert amikor ez nem történik meg akkor előfordulhat, hogy ez az állomány a program futása alatt zárolva marad. Ezt a close
függvénnyel tehetjük meg, amikor már nem dolgozunk tovább az állománnyal.
Futtassuk le az kódot.
$ py append.py
Jelen esetben nem létezett a minta.txt
állomány, de a write
függvény létrehozta a munka könyvtárba, ahol a programot futtattjuk. Ha most megnézzük a tartalmát, akkor benne van a mi új sorunk. Minden alkalommal amikor a futás megtörténik hozzáteszi az új szövegrészünket mint egy új sor.
Ha szeretnénk kódból is megnézhetjük a tartalmát. Akkor csak be kell olvasni.
file = open("minta.txt", "r")
print(file.read())
Teljes szerkesztés
Ezt követően nyissuk meg az állományt teljes írásra és módosítsuk a tartalmát. Ehhez hozzunk létre egy új forrás fájlt például write.py
néven. Ez azért hasznos így, mert akkor minden példának megmarad egy változata, amit később csak elő kell venni és tovább dolgozni vele.
file = open("minta.txt", "w")
file.write("Bármi is volt a tartalma ezt most felül írjuk ezzel. ")
file.close()
Végül futtassuk ezt is.
$ py write.py
Ezzel a kis paranccsal az állomány teljes tartalmát lecseréltük. Ellenőrizzük is, hogy tényleg megtörtént.