列印指定目錄下最大的十個檔案,并按倒序輸出:
vim top10.py
#!/usr/bin/env python
import os
import sys
import operator
def gen_dic(topdir):
dic = {}
a = os.walk(topdir)
for p, d, f in a:
for i in f:
fn = os.path.join(p, i)
f_size = os.path.getsize(fn)
dic[fn] = f_size
return dic
if __name__ == '__main__':
dic = gen_dic(sys.argv[1])
sorted_dic = sorted(dic.iteritems(), key=operator.itemgetter(1), reverse=True)
for k, v in sorted_dic[:10]:
print k, '==>', v
測試如下圖:
<a href="http://s4.51cto.com/wyfs02/M00/82/8C/wKiom1dZF53yG1jUAABjfM87t1k683.png-wh_500x0-wm_3-wmp_4-s_1480170206.png" target="_blank"></a>
本文轉自M四月天 51CTO部落格,原文連結:http://blog.51cto.com/msiyuetian/1787641,如需轉載請自行聯系原作者