Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah saya boleh mendapatkan senarai fail yang diisih dalam direktori mengikut tarikh penciptaan menggunakan Python?
Mendapatkan Penyenaraian Direktori Diisih Mengikut Tarikh Penciptaan Menggunakan Python
Apabila menavigasi direktori, keperluan sering timbul untuk mendapatkan senarai kandungannya yang diisih mengikut kriteria tertentu, seperti tarikh penciptaan. Dalam Python, tugas ini boleh dicapai dengan mudah.
Pendekatan Cadangan:
Untuk mencapai matlamat ini, gabungan modul manipulasi sistem fail terbina Python dan fungsi pengisihan ialah bekerja. Coretan kod berikut menggambarkan proses ini:
import glob import os search_dir = "/mydir/" files = [os.path.join(search_dir, f) for f in os.listdir(search_dir) if os.path.isfile(f)] files.sort(key=lambda x: os.path.getmtime(x))
Coretan kod ini bermula dengan mendapatkan senarai semua fail dalam direktori yang ditentukan menggunakan os.listdir(). Selepas itu, sebarang item bukan fail (cth., direktori, pautan) ditapis menggunakan os.path.isfile(). Untuk memastikan laluan fail yang betul, setiap nama fail diawali dengan laluan direktori carian.
Fail kemudian diisih mengikut masa pengubahsuaiannya menggunakan fungsi os.path.getmtime(). Fungsi ini mengembalikan masa pengubahsuaian terakhir fail dalam format angka. Dengan menghantar fungsi ini sebagai hujah utama kepada fungsi sorted(), fail disusun dalam susunan kronologi, dengan fail yang paling baru dibuat muncul dahulu.
Pendekatan Alternatif:
Pendekatan alternatif melibatkan penggunaan modul glob untuk menapis fail dan mendapatkan senarai laluan fail mutlak:
import glob import os search_dir = "/mydir/" # This glob will look for all files and exclude any directories files = [f for f in glob.glob(f"{search_dir}/**", recursive=True) if os.path.isfile(f)] files.sort(key=lambda x: os.path.getmtime(x))
Kod ini pada asasnya mencari keseluruhan kandungan direktori yang ditentukan dan subdirektorinya, termasuk semua fail dan tidak termasuk mana-mana direktori. Fungsi glob.glob() membolehkan padanan nama fail yang lebih fleksibel jika diperlukan.
Atas ialah kandungan terperinci Bagaimanakah saya boleh mendapatkan senarai fail yang diisih dalam direktori mengikut tarikh penciptaan menggunakan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!