天天看點

Python:列印目錄下最大的十個檔案

列印指定目錄下最大的十個檔案,并按倒序輸出:

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,如需轉載請自行聯系原作者

繼續閱讀