天天看点

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,如需转载请自行联系原作者