• 0

كيف أفرز الملفات في مجلد معين حسب تاريخ الإنشاء عن طريق بايثون؟

أريد الحصول على قائمة بأسماء الملفات الموجودة بمجلد معين مرتبة حسب تاريخ الإنشاء أو التعديل، فما الطريقة الصحيحة لفعل ذلك على نظام ويندوز باستخدام لغة بايثون؟

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


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

يوجد عدة طرق في لغة بايثون لفعل ذلك، فيمكنك على سبيل المثل الحصول على أسماء الملفات من خلال استخدام دوال مكتبة glob ومن ثم فرز النتائج باستخدام دالة sort() بالاعتماد على ترتيب دالة getmtime من وحدة os.path كما في المثال التالي:

import glob
import os

search_dir = "/tosearch/"
files = filter(os.path.isfile, glob.glob(search_dir + "*"))
files.sort(key=lambda x: os.path.getmtime(x))

أو يمكنك على سبيل المثال فعل ذلك باستخدام دوال مكتبة os فقط كما في المثال التالي:

import os

The_Dir = "/tosearch/"
os.chdir(The_Dir)
files = filter(os.path.isfile, os.listdir(The_Dir))
files = [os.path.join(The_Dir, f) for f in files]
files.sort(key=lambda x: os.path.getmtime(x))

 

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


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

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

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

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


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

تسجيل الدخول

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


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