![](/img/trans.png)
[英]How to find the size of all files in a directory and all its sub-directories?
[英]How to get list of all sub directories and files along with their size ordered by size?
如何获取所有子目录和文件的列表以及按大小按升序排序的大小?
下面的代码获取了所有文件的列表,但没有根据大小排序。 请帮忙。
import os
import os.path, time
from os.path import join, getsize
count=0
for root, dirs, files in os.walk('Test'):
for file in list(files):
fileaddress = os.path.join(root, file)
print("\nName:",fileaddress)
print("Time:",time.strftime("%m/%d/%Y %I:%M:%S %p",time.localtime(os.path.getmtime(fileaddress))))
count=count+1
print(count);
import os
from os.path import join, getsize
file_list = []
for root, dirs, files in os.walk('Test'):
file_list.extend( join(root,f) for f in files )
#May be *slightly* faster at the expense of a little readability
# and a little memory
# file_list.extend( [ join(root,f) for f in files ] )
print (sorted(file_list, key=getsize))
对于dirs
同样的事情 - 虽然我不确定目录的“大小”实际上是什么 - 你可能无法用getsize
排序(如果可以的话,你将无法获得结果)这很有意义)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.