Dinamik tiplashtirilgan


Fayl v papkalarni oʻchirish



Download 2,94 Mb.
bet36/77
Sana06.10.2022
Hajmi2,94 Mb.
#851613
1   ...   32   33   34   35   36   37   38   39   ...   77
Bog'liq
Dinamik

3. Fayl v papkalarni oʻchirish


Fayl va papkalar bilan ishlaganda, ularni oʻchirishga ehtiyoj paydo boʻlishi mumkin. Fayllarni oʻchirish uchun os modulida remove(), papkalarni oʻchirish uchun esa rmdir() funktsiyalari xizmat qiladi. Bu funktsiyalarning umumiy koʻrinishi quyidagicha:
os.remove('faylning manzili va nomi')
os.rmdir('oʻchiriladigan papkaning nomi')
Bu amallarni pathlib moduli yordamida ham hal qilish mumkin. Bu modulda fayllarni oʻchirish uchun - unlink(), papkalarni oʻchirish uchun esa— rmdir() funktsiyalari javob beradi.Bu funktsiyaarning har ikkisi ham Path ob`ektining nusxalari hisoblanadi.
4. Papkadagi fayllar roʻyxatini olish. Ma’lumotlarni qayta ishlash jarayonida papkadagi fayllar roʻyxatini olishga toʻgʻri kelib qolishi mumkin. Odatda bu roʻyxat ma’lum bir shablonga mos keladi. Aytaylik, bizga kengaytmasi .txt boʻlgan fayllar roʻyxati zarur boʻlib qoldi. Bu masalani path ob`ektli glob() metodi yordamida hal qilish mumkin. Shuni yodda tutish kerakki, bu metod iteratsiyalar (takrorlashlar) generatorini hosil qiladi. Quyida ana shu generatorning ishi namoyish qilinadi:
from pathlib import Path
txt_files = list(Path('.').glob("*.txt"))
print("Txt files:", txt_files)

Zarur hollarda glob() metodidan toʻgʻridan-toʻgʻri foydalanish ham mumkin. Bu holda fayllar roʻyxati aniqlanadi va bu roʻyxatdan keyinchalik ehtiyojga koʻra foydalanish mumkin. Bu koʻrsatmalarning farqi shundaki, Path.glob() metodi fayllar roʻyxatini manzili bilan birga yaratadi.
from glob import glob
files = list(glob('f*'))
print("h xarfi bilan boshlanadigan fayllar: ", files)

5. Fayllardan nusxa olish va joyini almashtirish. Bu ikki amal fayllar bilan ishlaganda eng koʻp qoʻllanadigan amallardan hisoblanadi. Fayllarning joyini almashtirish uchun ularning nomi va manzillari yangisiga almashtiriladi. Faraz qilaylik, joriy papkadagi .txt kenagytmali fayllar joyini boshqa papkaga oʻzgartirish talab qilingan boʻlsin. Quyidagi namunada bu masala qanday qilib pathlib moduli yordamida qilish mumkinligi namoyish qilinadi:
maqsad_papka = Path("maqsad_papka")
maqsad_papka.mkdir(parents=True,exist_ok=True)
manba_papka = Path('.')
txt_files = manba_papka.glob('*.txt')
for txt_file in txt_files:
filename = txt_file.name
maqsad_manzil = maqsad_papka.joinpath(filename)
print(f"** Joyi almashtiriladigan fayllar {filename}")
print("Target File Exists:", maqsad_manzil.exists())
txt_file.rename(maqsad_manzil)
print("Target File Exists:", maqsad_manzil.exists(), '\n')

Fayllardan nusha olish uchun shutil modulidagi copy() funktsiyasidan foydalaniladi. Zarur hollarda copy() va glob() metodlarini umumlashtirish mumkin.
import shutil
source_file = "target_folder/hello.txt"
target_file = "hello2.txt"
target_file_path = Path(target_file)
print("* Before copying, file exists:", target_file_path.exists())
shutil.copy(source_file, target_file)
print("* After copying, file exists:", target_file_path.exists())



Download 2,94 Mb.

Do'stlaringiz bilan baham:
1   ...   32   33   34   35   36   37   38   39   ...   77




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish