zoukankan      html  css  js  c++  java
  • 通过Python计算一个文件夹大小

    在进行计算一个文件夹内容大小的时候,我们要考虑文件夹内都有什么内容,可能都是一个一个的单文件,也有可能都是子文件夹,或者二者都有,既然要计算整个文件夹的大小,我们当然要计算每一个文件的大小以及每一个子文件夹下的每一个子文件。计算每一个文件的大小我们肯定都可以计算到,或者如果我们知道一个文件夹内有子文件夹的数量,一个个遍历子文件夹的内容进行计算,但是如果我们不知道这个文件夹内到底有多少子文件夹呢?所以,根据我的思路,可以使用递归的方式进行计算每一个文件及每一个字文件夹的大小,但有个弊端就是在python中递归有最大递归层数,说不定会有哪个变态套了N多层文件夹,这样的话我们的程序可能会抛出异常,所以我们还要做一定的异常处理,总之闲话少说,见代码吧。代码如下:

     1 import os
     2 total_size=0
     3 def file_size(path):
     4     global total_size
     5     path=os.path.abspath(path)
     6     file_list=os.listdir(path)
     7     for i in file_list:
     8         i_path = os.path.join(path, i)
     9         if os.path.isfile(i_path):
    10             total_size += os.path.getsize(i_path)
    11         else:
    12             try:
    13                 file_size(i_path)
    14             except RecursionError:
    15                 print('递归操作时超出最大界限')
    16     return total_size
    17 
    18 
    19 print(file_size('D:\红军不怕远征难\苍老师精彩集锦'))
  • 相关阅读:
    JS高级程序设计 第三章笔记
    JS高级程序设计第二章
    JS高级程序设计 第一章读书笔记
    markdown 尝试
    实验九
    第六章总结
    实验五
    第五章总结
    实验四
    实验三
  • 原文地址:https://www.cnblogs.com/zepc007/p/9557232.html
Copyright © 2011-2022 走看看