• 0

كيف أجد جميع الملفات ذات امتداد معين في البايثون ؟

لدي مجموعة من الملفات في مجلد وأريد أن أحصل على أسماء الملفات ذات امتداد .txt فكيف أستطيع فعل ذلك عن طريق استخدام لغة البايثون 2 ؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

هنالك عدة طرق يمكنك بها تحديد جميع الملفات ذات امتداد معين في البايثون والتي من أهمها وأشهرها هي عن طريق استخدام دالة glob من مكتبة glob حيث ستقوم هذه الدالة بإرجاع قائمة بأسماء الملفات كما في المثال التالي:

>>> import glob

>>> glob.glob('./[0-9].*')

['./1.gif', './2.txt']

>>> glob.glob('*.gif')

['1.gif', 'card.gif']

>>> glob.glob('?.gif')

['1.gif']

وفي حالة ما كانت الملفات في مجلد آخر غير المجلد الحالي فيمكنك تغيير المجلد عن طريق استدعاء دالة os ومن ثم إضافة هذا السطر قبل استخدام دالة glob:

os.chdir("/mydir")

 

كما يمكنك استخدام دالة listdir من مكتبة os لعرض هذه الملفات:

import os

for file in os.listdir("/mydir"):

if file.endswith(".txt"):

print(file)

للمزيد من المعلومات حول هذه الدوال أنصحك بمراجعة التوثيق الرسمي الموجود في المصدر
 

المصدر 1  2

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن