网络安全技术老师要求我们用python编写一个程序来实现一些简单的的功能作为自己的大作业故,我先想到的是编写一个程序来检索我电脑磁盘的文件,因为我C盘主盘的空间很容易满,我需要找到一种方法去检索C盘的文件,看看自己到底有哪些东西没有及时清理导致C盘空间爆满。
二、遍历程序说明
因为Windows的目录采用的是树形结构,所以首先要先确定自己选定的路径是否存在,若存在,则在确定该路径是否存在文件及文件夹,若存在,编译程序运行会显示出该路径下存在的文件及文件夹。
获取该路径中所有文件及文件夹的名称
之后遍历该路径下的所有内容,获取各文件的的大小以及将单位转换为MB
最后查找所选磁盘路径下的文件(我选用的是C盘),如果要检索其他盘的可在直接在程序界面修改,且检索到的文件要按照大小依次排序,生成结果按照(“文件路径”,“大小[MB]”)显示。
运行结果如下
源程序如下
import os
def get_files(path):
global lst
if not os.path.exists(path):
return
if not os.path.isdir(path):
return
file_list = os.listdir(path)
for filename in file_list:
try:
subpath = os.path.join(path, filename)
if os.path.isfile(subpath):
fsize = os.path.getsize(subpath)
fsize = fsize / float(1024 * 1024)
lst.append((fsize, subpath))
else:
get_files(subpath)
except:
pass
if __name__ == '__main__':
lst = []
get_files('C:/')
lst.sort(key=lambda k: k[0], reverse=True)
for i in range(50):
print('文件路径: %s, 大小:%s MB' % (lst[i][1], round(lst[i][0], 2)))
以上便是python检索文件的全部内容。
作者:Cao chengfang
参考文献:https://blog.csdn.net/weixin_30835649/article/details/97916761



