我在編寫一個程序,它需要一個命令行參數,掃描參數提供的目錄樹並創建目錄中每個文件的列表,然後對其進行排序通過文件的長度。從目錄參數中獲取文件,按大小排序
我沒有太大的腳本傢伙 - 但這是我有什麼,它不工作:
import sys
import os
from os.path import getsize
file_list = []
#Get dirpath
dirpath = os.path.abspath(sys.argv[0])
if os.path.isdir(dirpath):
#Get all entries in the directory
for root, dirs, files in os.walk(dirpath):
for name in files:
file_list.append(name)
file_list = sorted(file_list, key=getsize)
for item in file_list:
sys.stdout.write(str(file) + '\n')
else:
print "not found"
任何人都可以點我在正確的方向?
我建議閱讀功能['幫助Ø s.walk'](http://docs.python.org/2/library/os.html#os.walk)。這似乎是處理目錄樹的正確選擇。如果你看看這個函數的例子,你會看到,你正在一個很好的方式... – koffein
我認爲你最後一行之前是沒有必要的。實際上這行是導致錯誤... – koffein
@koffein我已經更新了我的代碼,但它仍然給我一個錯誤。 –