A Python egy beépített operációs rendszer (OS) modult biztosít, amely az OS fájlok és könyvtárak elérésére használható. Bármely számítógép-felhasználónak gyakran meg kell vizsgálnia, hogy létezik-e fájl a rendszerben. Tegyük fel például, hogy egy fájlrendszeren dolgozik, és meg akar győződni arról, hogy egy fájl rendelkezésre áll, mielőtt bármilyen nagyobb műveletet végrehajtana rajta. Ha megpróbál navigálni vagy megnyitni egy nem létező fájlt, ez hibát okozhat. Ez a cikk bemutatja a különböző Python fájlellenőrző mechanizmusok használatát.
Három különböző Python-funkció használható a fájl létezésének ellenőrzésére:
- pálya.létezik()
- pálya.isfile ()
- létezik()
A következő szakaszok ezeket a funkciókat részletesebben tárgyalják.
1. os.pálya.létezik()
Az út.Az exist () függvény az os modul által biztosított beépített függvény. Ez a függvény megkapja az elérési út fájlt, és az „igaz” értéket adja vissza, ha a fájl jelen van. Ha a fájl nincs, akkor a függvény 'hamis értéket ad vissza.- Mielőtt az utat használná.egzist (), először importálnia kell az os modult.
Mondjunk erre egy példát.
#importáló os modulimport os.pálya
# os használatával.pálya.egzist () a fájl létezésének ellenőrzéséhez
# megadja a fájl elérési útját
nyomtatás (os.pálya.létezik ("/ home / linuxhint / Documents / test.txt "))
Kimenet
Ebben a kimenetben láthatja, hogy az os.pálya.Az exist () függvény visszaadja az „true” értéket, ami azt jelenti, hogy a fájl a megadott elérési útban van.
A fájl a könyvtárban is megtalálható.
Módosítsuk most a fent megadott programot. Megváltoztatjuk a nyomtatási nyilatkozatot, hogy az eredmény egyértelműbb legyen.
#importáló os modulimport os.pálya
# os használatával.pálya.egzist () egy fájl létezésének ellenőrzéséhez
# megadja a fájl elérési útját
print ("A fájl létezik:", os.pálya.létezik ("/ home / linuxhint / Documents / test.txt "))
Kimenet
Ezután megváltoztatjuk a fájlt, és megadunk egy nem létező fájlt. Meg fogja figyelni, hogy az os.pálya.Az exist () függvény visszaadja 'hamis."
#imprting os modulimport os.pálya
# os használatával.pálya.egzist () a fájl létezésének ellenőrzéséhez
# megadja a fájl elérési útját
print ("A fájl létezik:", os.pálya.létezik ("/ home / linuxhint / Documents / abcfile.txt "))
Kimenet
Ez a kimenet azt mutatja, hogy az os.pálya.A exist () függvény visszaadja a 'hamis' értéket, ha a fájl nem létezik.
2. os.pálya.isfile ()
Az os.pálya.Az isfile () függvény egy fájl létezésének ellenőrzésére is használható. Ez a fájl létezésének ellenőrzésének leggyakoribb módja. Az os.pálya.Az isfile () függvény paraméterként veszi a fájl elérési útját, és ellenőrzi, hogy az adott elérési út érvényes fájlt tartalmaz-e. Ez a függvény visszaadja az „igaz” értéket, ha az adott elérési út szabályos fájl, és a „hamis” értéket adja vissza, ha az adott elérési út nem szabályos fájl. Lássunk erre egy példát.
#imoprting os modulimport os.pálya
# os használatával.pálya.isfile () a fájl létezésének ellenőrzéséhez
# megadja a fájl elérési útját
print ("Ez egy fájl:", os.pálya.isfile ("/ home / linuxhint / Documents / test.txt "))
Kimenet
Az os.pálya.Az isfile () függvény visszaadja az 'true' értéket."
Ebben a példában megadjuk az érvénytelen fájl nevét az adott elérési útban. A kimenetben látni fogja, hogy az os.pálya.Az isfile () függvény 'hamisat ad vissza."
#importáló os modulimport os.pálya
# os használatával.pálya.isfile () a fájl létezésének ellenőrzéséhez
# megadja a fájl elérési útját
print ("Ez egy fájl:", os.pálya.isfile ("/ home / linuxhint / Documents / fileTest.txt "))
Kimenet
3. pathlibPath.létezik()
A Python 3.A 4-es és újabb verziók tartalmazzák a pathlib modult a fájlrendszerek és útvonalak kezelésére.
Lássunk egy példát erre a függvényre:
#importing pathlib modulimport útvonal
# tárolja a fájl elérési útját egy változóban az Útvonal () függvény segítségével
filePath = elérési út.Elérési út ("/ home / linuxhint / Documents / test.txt ")
Az #using exist () függvény a fájl létezésének ellenőrzésére
ha filePath.létezik():
print ("A fájl létezik")
más:
print ("A fájl nem létezik")
Kimenet
Az adott fájl létezik a könyvtárban; ezért az exist () függvény visszaadja az 'true' értéket."
Ezután megadjuk az érvénytelen fájl elérési utat a Path () függvényben, és ellenőrizzük a kimenetet.
#importing pathlib modulimport útvonal
# tárolja a fájl elérési útját egy változóban az Útvonal () függvény segítségével
filePath = elérési út.Elérési út ("/ home / linuxhint / Documents / testabc.txt ")
Az #using exist () függvény a fájl létezésének ellenőrzésére
ha filePath.létezik():
print ("A fájl létezik")
más:
print ("A fájl nem létezik")
Kimenet
Az exist () függvény visszaadja a 'false' értéket, és az else utasítás végrehajtásra kerül, mert a fájl nem létezik az adott könyvtárban.
Hasonlóképpen, a következő beépített függvényekkel ellenőrizhetjük egy könyvtár létezését a Pythonban:
os.pálya.isdir ()
Az os.pálya.Az isdir () függvény visszaadja az „igaz” értéket, ha a megadott könyvtár létezik, a függvény pedig az „hamis” értéket adja vissza, ha a könyvtár nem létezik.
Lássunk erre egy példát:
#importáló os modulimport os.pálya
# os használatával.pálya.isdir () a könyvtár létezésének ellenőrzésére
# a dokumentumkönyvtár elérési útjának megadása
print ("Ez egy könyvtár:", os.pálya.isdir ("/ home / linuxhint / Dokumentumok"))
Kimenet
Az os.pálya.Az isdir () függvény igazat ad vissza, mert a könyvtár létezik a rendszerben.
Most adjuk meg az érvénytelen könyvtár elérési útját.
#importáló os modulimport os.pálya
# os használatával.pálya.isdir () a direcoty létezésének ellenőrzésére
# a MyDocuments könyvtár elérési útjának megadása
print ("Ez egy könyvtár:", os.pálya.isdir ("/ home / linuxhint / MyDocuments"))
Kimenet
Következtetés
Ebben a cikkben több példán keresztül ismertettük a fájlok létezésének ellenőrzését a Pythonban. Ez a cikk különböző módszereket mutatott be egy fájl létezésének ellenőrzésére a Pythonban. Az os és a pathlib modulok beépített funkciókat biztosítanak a fájlok létezésének ellenőrzésére a rendszerben. Ez a tudás hasznosnak bizonyul, mivel a Python és a programozás során gyakran előfordul, hogy a fájl létezésének ellenőrzésére van szükség.