Piton

Szöveges fájlok olvasása és írása a Pythonban

Szöveges fájlok olvasása és írása a Pythonban
Ez a cikk tartalmaz egy útmutatót, amely elmagyarázza a külső fájlkezelést a pythonban. A fő hangsúly a tároló adathordozón tárolt szöveges és más, nem bináris adatfájlok megnyitására és bezárására fog kerülni, lehetővé téve különféle műveletek futtatását a megnyitott fájlok tartalmával.

Fájl megnyitása és bezárása

Adatok leolvasása egy „data” nevű szöveges fájlból.txt ”, akkor a hivatalos Python buildekkel együtt kapott„ open ”metódust kell használnia. Ellenőrizze az alábbi mintakódot:

f = nyitott ('adatok.txt ',' r ')
f.Bezárás()

Az első állítás megnyitja az „adatokat.txt ”fájl„ r ”(csak olvasható) módban. A „nyitott” módszer elfogadja argumentumként a fájlnevet és a fájl kezelésének módját. Az „r” mód mellett vannak más módok is, amelyeket később elmagyarázunk. A fenti kódrészlet nem futtat semmilyen műveletet a megnyitott fájlon. A „bezárás” módszer a nyitott fájl tiszta bezárására szolgál, hogy felszabaduljon a memória, és elkerülhető legyen a megnyitott fájlban előforduló adatok sérülése, amely néha előfordulhat, ha a fájl nincs megfelelően lezárva.

Ahelyett, hogy a fájlok megnyitásának és bezárásának kezelésére az „open” módszert alkalmazná, kombinálhatja a „with” kulcsszóval, és használhatja a „with open” utasítással.

nyitott ('adatokkal.txt ',' r ') mint f:
passz

A „nyitva” utasítás használatának legfőbb előnye, hogy az értelmező automatikusan bezárja a megnyitott fájlt, ha a „nyitva” kódblokk teljesen értelmezve van. Bár a Python szemétgyűjtője egy idő után automatikusan bezárja a megnyitott fájlokat az előre beállított szabályok szerint, a „nyitott” utasításokkal biztosítani kell, hogy a fájl tiszta legyen, amint a kódblokk befejeződik az erőforrások felszabadítása érdekében.

Szöveges fájl sorainak olvasása

A fájl tartalmának elolvasásához használja az alábbi kódmintát:

nyitott ('adatokkal.txt ',' r ') mint f:
adatok = f.olvas()
nyomtatás (adatok)

Például, ha az „adatok.A txt ”fájl 1-10 számot tartalmaz, mindegyik egy új sorban, és a fenti kód futtatása után a következő kimenetet kapja:

1
2
3
4
5
6
7
8
9
10

Az „adatok.A txt ”fájlt az“ data ”változó tárolja. Ha fel akarja olvasni a sorokat egy listára, akkor a következő kódmintákat használhatja:

nyitott ('adatokkal.txt ',' r ') mint f:
adatok = f.readlines ()
nyomtatás (adatok) open ('adatokkal.txt ',' r ') mint f:
adatok = lista (f)
nyomtatás (adatok)

Ne feledje, hogy a fenti kivonatok használatával „\ n” (újsor) karaktert kaphat a lista minden elemének végén. Ezeknek az új soros karaktereknek a eltávolításához előfordulhat, hogy végig kell lapoznia a listán. Létrehozhat új listát, és új sor karaktereket csíkolhat a következő kód használatával:

adat_lista = []
nyitott ('adatokkal.txt ',' r ') mint f:
az f sorban:
adat_lista.függelék (sor.szalag())
nyomtatás (adat_lista)

A fenti kód futtatásával a következő kimenetet kapja:

['1', '2', '3', '4', '5', '6', '7', '8', '9', '10']

Adatok írása megnyitott fájlba

Ha a „nyitva” utasítással megnyitott fájlba kíván írni adatokat, akkor egy másik nyitási módot kell megadnia argumentumként. Íme néhány mód:

Az alábbiakban felsorolunk néhány kódrészletet, amelyek különböző módokat használnak az adatok írására.

Ha új tartalmat szeretne írni egy szöveges fájlba a meglévő adatok törlése közben, használja a következő mintát:

nyitott ('adatokkal.txt ',' w ') mint f:
f.írás ("1 \ n2")

A fenti kódrészlet futtatása után 1-10 számot kell beírni az „adatok.txt ”fájlt két új sorral kell helyettesíteni.

Sorok hozzáadásához a szöveges fájl elejéhez a "seek" módszerrel kell visszatérnie a fájlpuffer kiinduló helyzetéhez:

nyitott ('adatokkal.txt ',' r + ') mint f:
adatok = f.olvas()
f.keresni (0)
f.írás ("- 1 \ n0 \ n")
f.írás (adatok)

A fenti kódrészlet futtatása után -1 és 0 szám kerül az adatok két legfelső sorába.txt ”fájlokat.

Adatok csatolásához a fájl végén használja a következő mintát:

nyitott ('adatokkal.txt ',' a ') as f:
f.ír ("11 \ n12")

A fenti kódrészlet futtatása után 11 és 12 szám kerül a fájl végére.

Következtetés

A Python beépített osztályai és metódusai robusztus módot nyújtanak a szöveges fájlok kezelésére. Csak néhány kódsorral manipulálhatja a fájl meglévő adatait, és új sorokat is beszúrhat.

A Doom telepítése és lejátszása Linuxon
Bevezetés a Doom-ba A Doom sorozat a 90-es években keletkezett az eredeti Doom megjelenése után. Azonnali sláger volt, és ettől kezdve a játéksorozat ...
Vulkan Linux felhasználók számára
A grafikus kártyák minden új generációjával azt látjuk, hogy a játékfejlesztők átlépik a grafikus hűség határait, és egy lépéssel közelebb kerülnek a ...
OpenTTD vs Simutrans
Saját közlekedési szimuláció létrehozása szórakoztató, pihentető és rendkívül csábító lehet. Ezért meg kell győződnie arról, hogy a lehető legtöbb ját...