Directory Listing को Name द्वारा Sort करना
आप Directory Contents की List प्राप्त करने के लिए os.listdir Function को Call कर सकते हैं और इस List को Sort करने के लिए sorted Function का उपयोग कर सकते हैं।
उदाहरण
>>> import os
>>> list_dir = os.listdir('.')
>>> list_dir = [f.lower() for f in list_dir] # Lower Case में Convert करें
>>> sorted(list_dir)
['dlls', 'doc', 'etc', 'include', 'lib', 'libs', 'license.txt', 'news.txt', 'python.exe', 'pythonw.exe', 'readme.txt', 'scripts', 'share', 'tcl', 'tools', 'w9xpopen.exe']
Case-Insensitive Sorting (बेहतर तरीका):
import os
files = os.listdir('.')
sorted_files = sorted(files, key=str.lower)
print(sorted_files)
Reverse Order में Sort करना:
sorted_files = sorted(files, key=str.lower, reverse=True)
Pathlib का उपयोग:
from pathlib import Path
files = [f.name for f in Path('.').iterdir()]
sorted_files = sorted(files, key=str.lower)
print(sorted_files)
Files और Directories को अलग-अलग Sort करना:
import os
entries = os.listdir('.')
dirs = sorted([d for d in entries if os.path.isdir(d)], key=str.lower)
files = sorted([f for f in entries if os.path.isfile(f)], key=str.lower)
print("Directories:", dirs)
print("Files:", files)