Fájlok - merülés pythonban 3

"Kilenc kilométernyi séta nem vicc, különösen az eső alatt" - Harry Kemelman, The Nine Mile Walk

A Windows laptopon 38493 fájl volt, mielőtt telepítettem egy alkalmazást. Telepítés A Python 3 közel 3000 fájlt adott a teljes kötethez. A fájlok a legfontosabb operációs rendszerek elsődleges paradigmája az információ tárolásának; ez a koncepció annyira elcsendesedik, hogy a legtöbb ember nem érzékel valami más alternatívát. Figurativ módon szólva, a számítógép a fájlok tengerébe fullad.

11.2 Olvasás szöveges fájlokból

a_file = open ('példák / chinese.txt', encoding = 'utf-8')

A Python beépített funkciója open (), amely argumentumként adja át a fájlnevet. A példában a fájl neve "examples / chinese.txt" és 5 érdekes dolog van benne:

  1. Ez nem csak fájlnév, hanem a könyvtár elérési útjának és a fájl nevének kombinációja. Elméletileg egy fájl megnyitása funkció hárítható két paramétert: a fájl elérési útját és a fájl nevét, de open () csak át egy. Python-ban, ha szükséges, akkor minden vagy néhány elérési utat felvehet a könyvtárba.
  2. Ha megad egy könyvtár útvonalát használt / (közvetlen backslash, slash, jobb perjel) tárgyalása nélkül, hogy milyen operációs rendszert használnak. A Windows az \ (backslash, backslash, perjel, hogy a bal oldalon), hogy adja meg az utat, hogy a könyvtár, és a Linux és MacOS operációs rendszer használ / (előre backslash, slash, jobb perjel). A Pythonban a közvetlen sáv egyszerűen működik, még a Windows rendszeren is.
  3. A könyvtár elérési útvonala nem egy perjel (perjel) vagy betűvel kezdődik, ez a relatív útvonal. Mit számít? Van türelme, szöcske!
  4. Ez egy sor. Minden modern operációs rendszer (beleértve a Windows-ot is) a Unicode segítségével tárolja a fájlok és könyvtárak nevét. A Python 3 teljes mértékben támogatja a nem ascii utakat.
  5. A fájlnak nem a helyi lemezeken kell lennie. Használhat hálózati meghajtókat. Ez a fájl lehet virtuális fájlrendszer objektum (/ proc in linux). Ha a számítógép ezt fájlnak tekinti, és lehetővé teszi fájlként való elérését, a Python képes megnyitni ezt a fájlt.

A nyitott () függvény hívása nem korlátozódik az útvonalparaméternek a fájlra és annak nevére történő átadására. Van még egy kódolt kód. Ó igen, kedves olvasó, ez nagyon szörnyen hangzik!

11.2.1 A kódolás jellemzői megmutatják a szörnyű arcát

Byte bájt; az absztrakció szimbólumai. A karakterlánc egy Unicode karakter. De a lemezen lévő fájlok nem Unicode karakterek sorozata, hanem sorozatos bájtok. Ha egy lemezről egy szöveges fájlt olvas, hogyan tudja a Python ezt a bájtszekvenciát egy karakterláncba konvertálni? Egy bájtot dekódol egy bizonyos kódolási algoritmussal és visszaad egy Unicode karakterkészletet (vagyis mint egy karakterláncot).

Kapcsolódó cikkek