Rumah > Artikel > pembangunan bahagian belakang > Mengapakah susunan fail yang dikembalikan oleh `os.listdir()` tidak konsisten?
Isu Pesanan Alfanumerik dengan os.listdir()
Apabila bekerja dengan direktori dalam Python menggunakan os.listdir(), pengguna mungkin menghadapi perkara yang tidak dijangka susunan senarai subdirektori. Susunan lalai, yang dahulunya alfanumerik, kini kelihatan tidak konsisten dan mengarut. Artikel ini menyiasat faktor yang menentukan susunan senarai ini yang dipaparkan.
Masalah:
Dalam direktori yang mengandungi subdirektori bernama run01 hingga run20, os.listdir(os.getcwd ()) mengembalikan senarai dalam susunan seperti:
['run01', 'run18', 'run14', 'run13', 'run12', 'run11', 'run08', ...]
Penyelesaian:
Tertib senarai yang diambil oleh os.listdir() boleh dimanipulasi menggunakan sorted(). Untuk mengisih senarai mengikut abjad angka, gunakan:
sorted(os.listdir(whatever_directory))
Sebagai alternatif, gunakan kaedah .sort() senarai itu sendiri:
lst = os.listdir(whatever_directory) lst.sort()
Nota: Yang asal susunan nama fail yang dikembalikan oleh os.listdir() ditentukan oleh sistem fail asas dan mungkin berbeza antara sistem.
Atas ialah kandungan terperinci Mengapakah susunan fail yang dikembalikan oleh `os.listdir()` tidak konsisten?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!