Hozzon létre egy fájlt az ellenőrzéshez:
Bármely meglévő fájlt használhat, vagy új fájlt hozhat létre az oktatóanyagban bemutatott példakód teszteléséhez. Egy új szövegfájl ügyfelek.txt a következő tartalommal készült, amelyet később használhat az oktatóanyag következő részében.
Azonosító neve E -mail
01 Jony Liver [email protected]
02 Manik Hossain [email protected]
03 Neha Akter [email protected]
04 Janatul Ferdous [email protected]
05 Helal Uddin [email protected]
1. példa: Ellenőrizze, hogy a fájl megnyílt-e vagy sem az IOError használatával
IOError generál, amikor az open () függvényt meghívják egy korábban megnyitott fájl megnyitásához. Hozzon létre egy python -fájlt a következő parancsfájllal annak ellenőrzésére, hogy a fájl megnyílik -e vagy sem a használatával próbáld-kivéve Blokk. Itt minden létező fájlnév bemenetnek számít és olvasásra nyílik meg. Ezután az open () függvény újra meghívásra kerül, hogy ugyanazt a fájlt nyissa meg, amely IOError -t hoz létre és kinyomtatja a hibaüzenetet.
# Vizsgálja meg a fájlnevet
fájlnév = bemenet('Írja be a meglévő fájlnevet: n')
# Nyissa meg a fájlt először az open () függvénnyel
fileHandler = megnyitva(fájl név,'r')
# Próbálja meg újra megnyitni ugyanazt a fájlt
próbáld ki:
nyitottal('fájl név','r') mintfájl:
# Nyomtassa ki a sikeres üzenetet
nyomtatás('A fájl megnyílt olvasásra.')
# Növelje a hibát, ha a fájlt korábban megnyitotta
kivéve IOError:
nyomtatás('A fájl már megnyílt.')
Kimenet:
A fenti kimenet megjelenik a fenti parancsfájl végrehajtása után. Itt, ügyfelek.txt létezik az aktuális helyen, és a hibaüzenet, A fájl már megnyílt, nyomtatott a IOError kivétel.
2. példa: A zárt tulajdonság használatával ellenőrizze, hogy a fájl zárt-e vagy sem.
Az értéke zárva a tulajdonság igaz lesz, ha bármelyik fájlt bezárják. Hozzon létre egy python fájlt a következő parancsfájllal annak ellenőrzésére, hogy a fájl bezárva van -e, vagy nem létezik az aktuális helyen. Az előző példa szkript hibát generál, ha a felhasználótól vett fájlnév nem létezik az aktuális helyen. Ez a probléma ebben a példában megoldódott. Az te modul itt használható a felhasználótól átvett fájlnév meglétének ellenőrzésére. A check_closed () függvény úgy határozott meg, hogy ellenőrizze, hogy a fájl zárva van -e vagy sem, és a rendszer meghívja, ha a fájl létezik.
# Importálja az os modult, hogy ellenőrizze a fájl létezését
import
# A Drfine funkció ellenőrzi, hogy a fájl zárva van -e vagy sem
def check_closed():
hafileHandler.closed == Hamis:
# Nyomtassa ki a sikeres üzenetet
nyomtatás('A fájl megnyílt olvasásra.')
más:
# Nyomtassa ki a hibaüzenetet
nyomtatás('A fájl bezárult.')
# Vizsgálja meg a fájlnevet
fájlnév = bemenet('Írja be a meglévő fájlnevet: n')
# Ellenőrizze, hogy a fájl létezik -e vagy sem
haos.path.exist(fájl név):
# Nyissa meg a fájlt olvasásra
fileHandler = megnyitva(fájl név,'r')
# Hívja fel a funkciót
check_closed()
más:
# Nyomtassa ki az üzenetet, ha a fájl nem létezik
nyomtatás('A fájl nem létezik.')
Kimenet:
A fenti kimenet megjelenik a fenti parancsfájl végrehajtása után. Itt, ügyfelek.txt létezik az aktuális helyen, és a sikerüzenet, A fájl megnyílt olvasásra, nyomtatott, mert a lezárt ingatlan értéke visszajött Hamis .
3. példa: Ellenőrizze, hogy a fájl megnyílt-e vagy sem az OSError használatával
Az OSError generál, ha a rename () függvényt többször is meghívják egy már megnyitott fájlhoz. Hozzon létre egy python -fájlt a következő parancsfájllal, és ellenőrizze, hogy a fájl megnyitásakor vagy bezárásakor a OSError . A szkriptben az os modult használták a fájl létezésének ellenőrzésére és a fájl átnevezésére. Amikor az átnevezés () funkciót másodszor hívják meg, az OSError generálódik, és az egyéni hibaüzenet kinyomtatásra kerül.
# Importálja az os modult, hogy ellenőrizze a fájl létezésétimport
# Állítsa be a meglévő fájlnevet
fájlnév ='customers.txt'
# Állítsa be az új fájlnevet
új név ='customers.txt'
# Ellenőrizze, hogy a fájl létezik -e vagy sem
haos.path.exist(fájl név):
próbáld ki:
# Hívja fel először az átnevezési funkciót
os.név(fájlnév, új név)
# Hívja meg másodszor az átnevezési funkciót
os.név(fájlnév, új név)
# Növelje a hibát, ha a fájl megnyílt
kivéve OSError:
nyomtatás('A fájl még nyitva van.')
más:
# Nyomtassa ki az üzenetet, ha a fájl nem létezik
nyomtatás('A fájl nem létezik.')
Kimenet:
A fenti kimenet megjelenik a fenti parancsfájl végrehajtása után. Itt, ügyfelek.txt létezik az aktuális helyen, és a hibaüzenet, A fájl még nyitva van, nyomtatott, mert a OSError kivétel keletkezett, amikor a második átnevezés () funkció végrehajtva.
Következtetés:
Ha ugyanazzal a fájllal többször kell dolgoznunk egy szkriptben, elengedhetetlen tudni, hogy a fájl megnyílik vagy bezáródik. A fájlművelet befejezése után jobb, ha meghívja a close () függvényt a fájl bezárásához. A hiba akkor fordul elő, amikor egy fájlt másodszor is megnyitnak ugyanabban a szkriptben anélkül, hogy bezárnák. Ebben a bemutatóban különböző megoldásokat mutattak be a problémára, egyszerű példák segítségével segítve a python felhasználóit.