Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapakah susunan fail yang dikembalikan oleh `os.listdir()` tidak konsisten?

Mengapakah susunan fail yang dikembalikan oleh `os.listdir()` tidak konsisten?

Susan Sarandon
Lepaskan: 2024-11-09 22:25:02
asal
817 orang telah melayarinya

Why is the order of files returned by `os.listdir()` inconsistent?

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', ...]
Salin selepas log masuk

Penyelesaian:

Tertib senarai yang diambil oleh os.listdir() boleh dimanipulasi menggunakan sorted(). Untuk mengisih senarai mengikut abjad angka, gunakan:

sorted(os.listdir(whatever_directory))
Salin selepas log masuk

Sebagai alternatif, gunakan kaedah .sort() senarai itu sendiri:

lst = os.listdir(whatever_directory)
lst.sort()
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan