os မော်ဒျူး၏ scandir နည်းလမ်း
scandir နည်းလမ်းသည် ဖိုလ်ဒါတစ်ခုအတွင်းရှိ ဖိုင်များနှင့်
ခွဲထားသောဖိုလ်ဒါများကို ဖြတ်သန်းပေးပါသည်။ နည်းလမ်း၏
parameter တွင် ဖိုလ်ဒါလမ်းကြောင်းကို သတ်မှတ်ပေးရပါမည်။ နည်းလမ်းသည်
os.DirEntry object တစ်ခုကို return ပြန်ပေးပါသည်။
ဝါကျဖွဲ့စည်းပုံ
import os
os.scandir(ဖိုလ်ဒါလမ်းကြောင်း)
နမူနာ
ကျွန်ုပ်တို့၏ ဖိုလ်ဒါတည်ဆောက်ပုံကို ကြည့်ရအောင်။
import os
print(os.scandir('dir'))
ကုဒ်ကို run ပြီးနောက် ရရှိသော result သည်
os.DirEntry object တစ်ခုဖြစ်ပါသည်။
<nt.ScandirIterator object at 0x000001478707FF00>
နမူနာ
ယခု ရရှိလာသော object ကို loop ဖြင့် ဖြတ်သန်းကြည့်ရအောင်။
စနစ်၏ resource များကို လွှတ်ပေးရန်၊ loop ပြီးဆုံးသွားသောအခါ
scandir နည်းလမ်းကို အသုံးပြု၍ ဖြတ်သန်းမှုကို ပိတ်ပေးရန်လိုအပ်ပါသည်။
import os
for file in os.scandir('dir'):
print(file)
os.scandir('dir').close()
run ပြီးသော ကုဒ်၏ result မှာ
<DirEntry 'dir1'>
<DirEntry 'file1.txt'>
<DirEntry 'file2.txt'>
နမူနာ
ထို့အပြင် ရရှိလာသော object အတွက် name attribute ကို apply လုပ်ခြင်းဖြင့်
ဖိုင်အမည်များကိုသာ ထုတ်ပြနိုင်ပါသည်။
import os
for file in os.scandir('dir'):
print(file.name)
os.scandir('dir').close()
run ပြီးသော ကုဒ်၏ result မှာ
dir1
file1.txt
file2.txt
ဤသည်ကိုလည်း ကြည့်ပါ
-
DirEntryobject သည်osမော်ဒျူး၏ တစ်စိတ်တစ်ပိုင်းဖြစ်ပြီး၊
၎င်းတွင် ဖြတ်သန်းနိုင်သော ဖိုင်များနှင့် ခွဲထားသောဖိုလ်ဒါများ ပါဝင်သည်။ -
getcwdနည်းလမ်းသည်osမော်ဒျူး၏ တစ်စိတ်တစ်ပိုင်းဖြစ်ပြီး၊
၎င်းသည် လက်ရှိ အလုပ်လုပ်နေသော ဖိုလ်ဒါကို return ပြန်ပေးသည်။ -
makedirsနည်းလမ်းသည်osမော်ဒျူး၏ တစ်စိတ်တစ်ပိုင်းဖြစ်ပြီး၊
၎င်းသည် ဖိုလ်ဒါတစ်ခုကို ဖန်တီးပေးသည်။ -
rmtreeနည်းလမ်းသည်shutilမော်ဒျူး၏ တစ်စိတ်တစ်ပိုင်းဖြစ်ပြီး၊
၎င်းသည် ဖိုလ်ဒါတစ်ခုကို ထပ်ကာထပ်ကာ ဖျက်ပေးသည်။ -
copytreeနည်းလမ်းသည်shutilမော်ဒျူး၏ တစ်စိတ်တစ်ပိုင်းဖြစ်ပြီး၊
၎င်းသည် ဖိုလ်ဒါတစ်ခုကို ထပ်ကာထပ်ကာ ကူးယူပေးသည်။ -
path.joinနည်းလမ်းသည်osမော်ဒျူး၏ တစ်စိတ်တစ်ပိုင်းဖြစ်ပြီး၊
၎င်းသည် လမ်းကြောင်းများကို ပေါင်းစပ်ပေးသည်။