python 按文件大小排序,含子目录文件

import os
import os.path
def my_cmp(E1, E2):
    return -cmp(E1[1], E2[1]) 
L={}
k={}
count=0
rootdir = "/home/xiayu/.mozilla/firefox/06ze02mw.default/Cache"
for parent, dirnames, filenames in os.walk(rootdir):
#case 1:
# for dirname in dirnames:
#  print "parent is:" + parent
#  print "dirname is:" + dirname
#case 2
 for filename in filenames:
#  print "filename with full path " + os.path.join(parent, filename) + "       size %d"% os.path.getsize(os.path.join(parent, filename)) 
#   L[os.path.join(parent, filename)]=os.path.getsize(os.path.join(parent, filename))
   name=os.path.join(parent, filename)  
   L[name]=os.path.getsize(name)          
#   L=dict([name,os.path.getsize(name)])
   count=count+1
#  L.append(os.path.getsize(os.path.join(parent, filename)))
print count
count=0

#sorted(L.items(), lambda x, y: cmp(x[1], y[1]))
k=sorted(L.iteritems(), key=lambda L:L[1],reverse = False) 

print len(k)

for i in range(len(k)):
 print k[i][0],"\t",k[i][1]
'''
for pathname in L.keys():
 print pathname ,"\t",L[pathname]
 count=count+1
'''


        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值