1. Panimula
Sa paggamit ng Python, madali mong mapamamahalaan ang mga file at direktoryo. Lalo na ang paglikha ng direktoryo ay isa sa mga madalas na ginagawa para sa pag-aayos ng mga file, backup, at awtomatikong pagbuo. Sa gabay na ito, detalyadong ipapaliwanag kung paano lumikha ng mga direktoryo gamit ang module na os
at module na pathlib
. Tatalakayin din ang recursive na paglikha ng direktoryo at error handling, at layunin naming gawing madaling maintindihan para sa mga baguhang Python.
2. Paggawa ng Direktoryo gamit ang os.mkdir()
Pangunahing Paggamit
os.mkdir()
ay pangunahing paraan para lumikha ng isang direktoryo sa tinukoy na landas. Gayunpaman, may limitasyon ang function na ito; kung walang magulang na direktoryo, magdudulot ito ng error. Halimbawa, ang sumusunod na code ay simpleng paraan ng paglikha ng direktoryo.
import os
# Tukuyin ang landas ng direktoryong gagawin
dir_path = './new_directory'
# Gumawa ng direktoryo
os.mkdir(dir_path)
Sa code na ito, nililikha ang direktoryo sa tinukoy na landas, ngunit kung may umiiral nang direktoryo na may parehong pangalan, magaganap ang FileExistsError
. Ito ang isa sa mga dapat tandaan sa os.mkdir()
.
Error Handling
Maari mong maiwasan ang error sa pamamagitan ng pagsuri kung umiiral na ang direktoryo bago ito likhain. Ang sumusunod na code ay isang konkretong halimbawa.
import os
# Tukuyin ang landas ng direktoryong gagawin
dir_path = './new_directory'
# Suriin kung umiiral ang direktoryo
if not os.path.exists(dir_path):
os.mkdir(dir_path)
else:
print(f"Ang direktoryo '{dir_path}' ay umiiral na.")
Sa pamamaraang ito, maiiwasan mo ang error na nangyayari kapag sinusubukang muling likhain ang isang umiiral na direktoryo.
3. Paggamit ng os.makedirs()
para sa recursive na paglikha ng direktoryo
Recursive na Paglikha ng Direktoryo
os.makedirs()
ay maaaring ituring na mas mataas na bersyon ng os.mkdir()
. Dahil maaaring lumikha ng maraming antas ng direktoryo nang sabay-sabay, posible ring lumikha ng mga intermediate na direktoryo kahit na ang parent directory ay wala.
import os
# Path na naglalaman ng intermediate na direktoryo
dir_path = './parent_directory/sub_directory'
# Lumikha ng direktoryo nang rekursibo
os.makedirs(dir_path)
Sa halimbawang ito, ang parent_directory
at ang sub_directory
sa loob nito ay nilikha nang sabay. Ipinapakita nito ang mataas na kaginhawahan dahil kahit na walang intermediate na direktoryo, maaaring likhain ang lahat ng direktoryo nang hindi nagkakaroon ng error.
Error handling gamit ang exist_ok=True
os.makedirs()
ay may option na exist_ok
, na nagpapahintulot na magpatuloy ang proseso nang hindi nagbubunga ng error kahit na ang direktoryo ay umiiral na.
import os
dir_path = './parent_directory/sub_directory'
# Hindi magiging sanhi ng error kahit na umiiral na ang direktoryo
os.makedirs(dir_path, exist_ok=True)
Sa paggamit ng pamamaraang ito, maiiwasan ang abala ng pag-check kung umiiral ang direktoryo nang pauna, kaya pinapasimple ang error handling.
4. Paglikha ng Direktoryo gamit ang pathlib module
Paglikha ng Direktoryo gamit ang Path object
pathlib
Ang pathlib module ay isang maginhawang module para sa pag-manipula ng mga path ng file system na magagamit mula Python 3.4 pataas.Path()
Sa paggamit ng Path() object, tataas din ang nababasa ng code.
from pathlib import Path
# Tukuyin ang path ng direktoryo
dir_path = Path('./new_directory')
# Lumikha ng direktoryo
dir_path.mkdir()
pathlib
Ang benepisyo ng pathlib ay ang kakayahang magsagawa ng object-oriented na pag-manipula ng mga path, na nagpapataas ng pagiging intuitive ng code.
Recursive na Paglikha ng Direktoryo at Error Handling
pathlib
Kahit kapag gumagamit ng pathlib para sa recursive na paglikha ng direktoryo, madali itong magagawa sa pamamagitan lamang ng pagtukoy ng mga opsyon.
from pathlib import Path
# Path na naglalaman ng intermediate na direktoryo
dir_path = Path('./parent_directory/sub_directory')
# Lumikha kasama ang intermediate na direktoryo
dir_path.mkdir(parents=True, exist_ok=True)
Sa code na ito, ang maraming antas ng mga direktoryo kasama ang mga intermediate na direktoryo ay nililikha nang sabay-sabay, at hindi mag-eerror kahit na may umiiral nang direktoryo.
5. Pag-verify ng Pag-iral ng Direktoryo at Paghawak ng Error
Ang pag-verify kung ang direktoryo ay umiiral na ay batayan ng paghawak ng error.os
mga module at pathlib
gamit ito upang i-verify ang pag-iral ng direktoryo, at ligtas na magsagawa ng mga operasyon sa direktoryo.
Pamamaraan ng Pag-verify gamit ang os module
import os
dir_path = './new_directory'
if os.path.exists(dir_path):
print(f"Ang direktoryo '{dir_path}' ay umiiral na.")
else:
print(f"Ang direktoryo '{dir_path}' ay hindi umiiral.")
Pamamaraan ng Pag-verify gamit ang pathlib
from pathlib import Path
dir_path = Path('./new_directory')
if dir_path.exists():
print(f"Ang direktoryo '{dir_path}' ay umiiral na.")
else:
print(f"Ang direktoryo '{dir_path}' ay hindi umiiral.")
6. Buod
Sa artikulong ito, detalyado naming ipinaliwanag ang iba’t ibang paraan ng paglikha ng mga direktoryo gamit ang Python.os.mkdir()
at os.makedirs()
, naintindihan mo ang pagkakaiba, at natutunan mo rin ang paglikha ng mga rekursibong direktoryo at paghawak ng mga error. Dagdag pa rito, nalaman namin na sa pamamagitan ng paggamit ng bagong standard na module ng Python na pathlib
, makakagawa ng mas simple at mas nababasang code.
Pumili ng pinakaangkop na paraan ayon sa iyong pangangailangan at magsagawa ng epektibong pag-manipula ng mga direktoryo.