Mencipta Direktori dan Ibu Bapa Mereka dengan Python
Dalam bidang sistem fail, selalunya perlu untuk mencipta direktori, kedua-duanya pada laluan yang ditentukan dan mana-mana direktori induk yang hilang di sepanjang jalan. Ini meniru kefungsian perintah mkdir -p Bash.
Modern Python (≥ 3.5):
Modul pathlib Python menyediakan cara yang mudah untuk mengendalikan perkara ini:
from pathlib import Path Path("/my/directory").mkdir(parents=True, exist_ok=True)
Sawa Tua Versi:
Menggunakan modul os:
import os if not os.path.exists(directory): os.makedirs(directory)
Pendekatan ini mempunyai potensi keadaan perlumbaan, seperti yang dinyatakan oleh ulasan. Untuk menangani perkara ini, anda boleh menggunakan os.path.exists kedua memanggil atau memerangkap OSError dan memeriksa kod ralat terbenam:
import os, errno try: os.makedirs(directory) except OSError as e: if e.errno != errno.EEXIST: raise
Walau bagaimanapun, ini memperkenalkan risiko kehilangan ralat lain.
Versi Python yang Diperbaiki:
Python 3.3 memperkenalkan FileExistsError, yang memudahkan pengendalian ralat:
try: os.makedirs("path/to/directory") except FileExistsError: # directory already exists pass
Python 3.2 juga menambahkan argumen exist_ok pada os.makedirs:
os.makedirs("path/to/directory", exist_ok=True) # succeeds even if directory exists.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta Direktori dan Direktori Induk Mereka dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!