„Python“

Kaip skaityti ir rašyti tekstinius failus „Python“

Kaip skaityti ir rašyti tekstinius failus „Python“
Šiame straipsnyje bus pateiktas vadovas, paaiškinantis išorinių failų tvarkymą „Python“. Pagrindinis dėmesys bus skiriamas tekstinių ir kitų ne dvejetainių duomenų failų, saugomų laikmenoje, atidarymui ir uždarymui, leidžiantis atlikti įvairias atidarytų failų turinio operacijas.

Failo atidarymas ir uždarymas

Norėdami perskaityti duomenis iš teksto failo, pavadinto „duomenys.txt “, turite naudoti„ open “metodą, kuris pateikiamas kartu su oficialiais„ Python “kūriniais. Patikrinkite kodo pavyzdį žemiau:

f = atidaryti ('duomenys.txt ',' r ')
f.Uždaryti()

Pirmasis teiginys atveria „duomenis.txt “failas„ r “(tik skaityti) režimu. Metodas „open“ priima failo pavadinimą ir failo tvarkymo režimą kaip argumentus. Be „r“ režimo, yra ir kitų režimų, kurie bus paaiškinti vėliau. Aukščiau pateiktas kodo fragmentas neatlieka jokių operacijų atidarytame faile. „Uždaryti“ metodas naudojamas švariai uždaryti atidarytą failą, kad būtų atlaisvinta atmintis ir išvengta duomenų sugadinimo atidarytame faile, kuris gali atsitikti kartais, jei failas nėra tinkamai uždarytas.

Užuot naudoję „open“ metodą failų atidarymui ir uždarymui, galite jį sujungti su „with“ raktiniu žodžiu ir naudoti „with open“ sakinį.

su atviraisiais ('duomenys.txt ',' r ') kaip f:
praeiti

Pagrindinis teiginio „su atviru“ naudojimo privalumas yra tai, kad vertėjas automatiškai saugiai uždaro atidarytą failą, kai „su atviru“ kodo blokas yra visiškai išanalizuotas. Nors „Python“ šiukšlių surinkėjas po kurio laiko automatiškai uždaro atidarytus failus pagal iš anksto nustatytas taisykles, „su atvirais“ teiginiai užtikrina, kad failas bus švariai uždarytas, kai tik baigsite kodų bloką, kad atlaisvintumėte išteklius.

Teksto failo eilučių skaitymas

Norėdami perskaityti failo turinį, naudokite toliau pateiktą kodo pavyzdį:

su atviraisiais ('duomenys.txt ',' r ') kaip f:
duomenys = f.skaityti ()
spausdinti (duomenys)

Pavyzdžiui, jei „duomenys.txt “faile yra 1–10 numerių, kurių kiekviena yra naujoje eilutėje, paleidę aukščiau nurodytą kodą gausite tokią išvestį:

1
2
3
4
5
6
7
8
9
10

Visas „duomenų.txt “failas saugomas kintamajame„ data “. Jei norite skaityti sąrašo eilutes, galite naudoti šiuos kodų pavyzdžius:

su atviraisiais ('duomenys.txt ',' r ') kaip f:
duomenys = f.eilutės ()
spausdinti (duomenys) su open ('duomenys.txt ',' r ') kaip f:
duomenys = sąrašas (f)
spausdinti (duomenys)

Atminkite, kad naudodami aukščiau pateiktus fragmentus galite gauti simbolį „\ n“ (nauja eilutė) kiekvieno sąrašo elemento pabaigoje. Jei norite pašalinti šiuos naujos eilutės simbolius, gali tekti peržiūrėti sąrašą. Galite sukurti naują sąrašą ir ištrinti naujos eilutės simbolius naudodami šį kodą:

duomenų_ sąrašas = []
su atviraisiais ('duomenys.txt ',' r ') kaip f:
linijai f:
duomenų_ sąrašas.pridėti (eilutė.juosta ())
spausdinti (duomenų_ sąrašas)

Vykdydami aukščiau esantį kodą gausite šią išvestį:

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

Duomenų rašymas į atidarytą failą

Norėdami rašyti duomenis į atidaromą failą naudodami „su atviru“ sakinį, kaip argumentą turėsite pateikti kitą atidarymo režimą. Štai keletas režimų:

Kai kurie kodo fragmentai, naudojantys skirtingus režimus duomenims rašyti, yra išvardyti toliau.

Norėdami įrašyti naują turinį į teksto failą ištrindami esamus duomenis, naudokite šį pavyzdį:

su atviraisiais ('duomenys.txt ',' w ') kaip f:
f.rašyti ("1 \ n2")

Paleidus aukščiau esantį fragmentą, 1–10 skaičių skiltyje „duomenys.txt “failas turėtų būti pakeistas dviem naujomis eilutėmis.

Norėdami pridėti eilučių teksto failo pradžioje, turite naudoti „seek“ metodą, kad grįžtumėte į pradinę failo buferio padėtį:

su atviraisiais ('duomenys.txt ',' r + ') kaip f:
duomenys = f.skaityti ()
f.ieškoti (0)
f.rašyti ("- 1 \ n0 \ n")
f.rašyti (duomenys)

Paleidus aukščiau esantį fragmentą, -1 ir 0 skaičiai bus pridėti prie dviejų viršutinių „duomenų“ eilučių.txt “failus.

Norėdami pridėti duomenų failo pabaigoje, naudokite šį pavyzdį:

su atviraisiais ('duomenys.txt ',' a ') kaip f:
f.rašyti ("11 \ n12")

Paleidus aukščiau esantį fragmentą, failo pabaigoje bus pridėti 11 ir 12 numeriai.

Išvada

„Python“ integruotos klasės ir metodai suteikia patikimą būdą tvarkyti tekstinius failus. Turėdami tik kelias kodo eilutes, galite manipuliuoti esamais failo duomenimis ir įterpti naujų eilučių.

Pridėkite pelės gestus prie „Windows 10“ naudodami šiuos nemokamus įrankius
Pastaraisiais metais kompiuteriai ir operacinės sistemos labai išsivystė. Buvo laikas, kai vartotojai turėjo naudoti komandas naršydami per failų tvar...
Valdykite ir valdykite pelės judėjimą tarp kelių „Windows 10“ monitorių
„Dual Display Mouse Manager“ leidžia jums valdyti ir konfigūruoti pelės judėjimą tarp kelių monitorių, sulėtinant jo judėjimą šalia sienos. „Windows 1...
„WinMouse“ leidžia tinkinti ir pagerinti pelės žymeklio judėjimą „Windows“ kompiuteryje
Jei norite pagerinti numatytąsias pelės žymiklio funkcijas, naudokite nemokamą programinę įrangą „WinMouse“. Tai prideda daugiau funkcijų, kurios padė...