Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Semak Kewujudan Fail dalam Python Tanpa Menggunakan Pengecualian?
Menentukan Kewujudan Fail Tanpa Pengecualian
Apabila berurusan dengan pengendalian fail, adalah penting untuk mengesahkan kewujudan fail sebelum mencuba operasi untuk mengelakkan pengecualian. Begini cara untuk menyelesaikan tugas ini tanpa bergantung pada pernyataan cuba:
Menggunakan os.path.isfile
Dalam senario di mana anda tidak bercadang untuk segera membuka fail , anda boleh menggunakan os.path.isfile, terutamanya jika anda memerlukan pengesahan bahawa entiti itu ialah fail. Fungsi ini mengembalikan True jika laluan yang disediakan sepadan dengan fail biasa sedia ada. Adalah penting untuk ambil perhatian bahawa os.path.isfile mengikuti pautan simbolik, bermakna kedua-dua islink() dan isfile() boleh mengembalikan True untuk laluan yang sama.
import os.path os.path.isfile(fname)
Memanfaatkan pathlib
Python 3.4 memperkenalkan modul pathlib, yang menyediakan pendekatan berorientasikan objek. Menggunakan pathlib, anda boleh melakukan semakan kewujudan menggunakan objek Path. Berikut ialah beberapa contoh:
Untuk menyemak sama ada fail wujud:
from pathlib import Path my_file = Path("/path/to/file") if my_file.is_file(): # file exists
Untuk menyemak sama ada direktori wujud:
if my_file.is_dir(): # directory exists
Untuk menyemak sama ada objek Path wujud tanpa mengira sama ada ia fail atau direktori:
if my_file.exists(): # path exists
Menyelesaikan Laluan dengan strict=True
Anda juga boleh menggunakan resolve() dengan strict=True dalam blok percubaan untuk menentukan kewujudan. Jika resolusi berjaya, laluan itu wujud; jika tidak, ia tidak.
try: my_abs_path = my_file.resolve(strict=True) except FileNotFoundError: # doesn't exist else: # exists
Dengan menggunakan teknik ini, anda dengan yakin boleh menyemak kewujudan fail tanpa mencetuskan pengecualian yang tidak diingini, memastikan operasi pengendalian fail yang mantap dalam kod anda.
Atas ialah kandungan terperinci Bagaimana untuk Semak Kewujudan Fail dalam Python Tanpa Menggunakan Pengecualian?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!