2013-01-23 74 views
0
import os 
import string 
os.chdir('C:\Python27') 
x=os.listdir('C:\Python27') 

y=[f for f in os.listdir(dirname) 
    if os.path.isfile(os.path.join(dirname, f))] 

for k in y: 
    fileName, fileExtension = os.path.splitext(k) 
    print fileName,fileExtension 

現在,我想按擴展名排序文件。Python中按擴展名排序文件的功能是什麼?

回答

1

排序使用key功能列表:

y.sort(key=lambda f: os.path.splitext(f)) 
5

按名稱排序,然後推而廣之:

y.sort(key=os.path.splitext) 

它產生的順序:

a.2 
a.3 
b.1 

排序只通過擴展名:

y.sort(key=lambda f: os.path.splitext(f)[1]) 

它產生的順序:

b.1 
a.2 
a.3 
+0

非常感謝你,我的朋友!我希望你會有一個燦爛的一天;)你幫了我很多:D – user2003611