Papka va disklar bilan asoslari Get started
Open in app
Fayllar ilan ishlaganda, odatda ularning nomi, manzili, saqlanayotgan diski nomi kabi operatsion tizim bilan bog’liq ma`lumotlarga ehtiyoj paydo bo`ladi. Quyida ularning eng muhimlari haqidagi ma`lumotlar bayon etiladi.
1. Joriy (ishchi) papkani aniqlash. Joriy (ishchi) papkani aniqlash uchun os modulidagi getcwd() metodidan foydalanish mumkin:
import os
print("Joriy papka manzili va nomi :", os.getcwd())
Xuddi shu amalni pathlib modulidagi cwd() metodi yordamida ham tashkil qilish mumkin:
from pathlib import Path
print("Joriy papka manzili va nomi :", Path.cwd())
Ushbu kod joriy manzilni aniqlashda pathlib modulidan foydalanish mumkinligini namoyish qilmoqda. Bu usul birinchisidan afzalroq hisoblanadi. Python tilining “eski” versiyalarida esa os modulidan foydalanishga to`g’ri keladi.
2. Yangi papka hosil qilish. Yangi papkalarni hosil qilish uchun os modulidagi mkdir() funktsiyasidan foydalaniladi. Bunda yangi papka ko`rsatilgan manzilda, manzil ko`rsatilmaganda esa joriy papkada yaratiladi.
import os
os.mkdir("Namuna")
print("Papka yaratildimi? :", os.path.exists("Namuna"))
Quyidagi kod yangi papkani ko`rsatilgan manzilda yaratadi:
import os
os.mkdir("Namuna")
print("Papka yaratildimi? :", os.path.exists("Namuna"))
Agar ko`rsatilgan fayl manzilda mavjud bo`lsa, istisnoli vaziyat yuzaga kelib, dastur hatolik haqida tegishli axborotni ekranga uzatadi. Bu hatolikni oldini olish uchun, agar dasturchi haqiqatdan ham papkani qayta yaratishga qaror qilgan bo`lsa, buyruqni qo`shimcha “exist_ok=True” ko`rsatmasi bilan o`zgartirishi mumkin:
import os
os.makedirs('C:\Yangi_papka', exist_ok=True)
print("Yangi papka yaratildimi? :", os.path.exists("C:\ Yangi_papka"))
Shuni unutmaslik kerakki, papka qayta yaratilganda “eski” papka va undagi ma`lumotlar diskdan o`chirib tashlanadi.
Agar bir nechta ichma-ich joylashgan papkalarni yaratishga zarurat paydo bo`lsa, makedirs() funktsiyasidan foydalanish lozim.
import os
os.makedirs('C:\Yangi\Yangi\Yangi_papka')
print("Yangi papka yaratildimi? :", os.path.exists("C:\Yangi\Yangi\ Yangi_papka"))
Kod bajargan amalni operatsion tizim orqali ham tekshirish mumkin:
Shu masalada pathlib modulidan ham foydalanish mumkin. Modulning afzalligi shundaki, u ko`rsatilgan manzilda mavjud bo`lmagan ostpapkalar bilan ham ishlay oladi. Quyidagi namunaga e`tibor bering:
from pathlib import Path
path("C:\Yangi\Yangi\Yangi_papka").mkdir(parents=True, exist_ok=True)
Shuni yodda tutish kerakkki, yuqoridagi kodni takroran qo`llash hatolikka olib keadi, chunki bu papka yaratilgan bo`ladi. Bu muammo exist_ok o`zgaruvchisi argumentiga True qiymatini berish orqali hal qilinishi mumkin. Bu o`zgaruvchiga False qiymatini berish mavjud papkani takroran ochishga ruhsat bermaydi va hatolikka olib keladi.
from pathlib import Path
Path("test_folder").mkdir(parents=True, exist_ok=False)
Do'stlaringiz bilan baham: |