python 计算文件夹里所有内容的大小总和
计算文件夹里所有内容的大小总和
递归方法
'''计算文件夹的大小'''
import os
def dir_file_size(path):
if os.path.isdir(path):
file_size = 0
dir_list = os.listdir(path)
for dir_name in dir_list:
file_path = os.path.join(path,dir_name)
if os.path.isfile(dir_name):
file_size += os.path.getsize(file_path)
else:
ret = dir_file_size(file_path)
file_size += ret
return file_size
elif os.path.isfile(path):
return os.path.getsize(path)
else:print('找不到%s文件'%path)
path = r'D:\oldbaoy_python_project\day04'
ret = dir_file_size(path)
print('{0} 的大小为 {1}字节'.format(path,ret))
栈方法
import os
def dir_file_size(path):
if os.path.isdir(path):
file_size, dir_list = 0, [path]
while dir_list:
path = dir_list.pop()
dirs = os.listdir(path)
for name in dirs:
file_path = os.path.join(path, name)
if os.path.isfile(file_path):
file_size += os.path.getsize(file_path)
else:
dir_list.append(file_path)
return file_size
elif os.path.isfile(path):
return os.path.getsize(path)
else:
print('找不到%s文件' % path)
path = r'D:\oldbaoy_python_project\day04'
ret = dir_file_size(path)
print('{0} 的大小为 {1}字节'.format(path, ret))
python 计算文件夹里所有内容的大小总和的更多相关文章
- python计算文件夹大小(linux du命令 简化版)
C盘又满了,怎么办?用了一些垃圾清理软件(或者bat脚本),但是还是不理想,那么具体哪些文件夹下面有巨大的文件呢?windows并不能通过详细信息看到每个文件夹的大小(PS:这里所谓的文件夹的大小是指 ...
- 用7z.exe 压缩整个文件夹里的内容
以下是批处理中的内容: 7z.exe a -tzip zmv9netSrc.zip "D:\IE收藏夹备份\*"pause7z.exe a -tzip zmv9netSrc.zip ...
- python计算文件夹大小——os.walk
下面提供一种利用os.walk()快捷的计算指定文件夹大小的方法 话不多说,直接上代码 简略版: import os def get_file_size(file_path, size=0): for ...
- python 批量创建文件及文件夹(文件夹里再创文件)
python 批量创建文件及文件夹(文件夹里再创文件)思路:文件建到哪>文件名字叫啥>创建文件夹>去新建的文件下>新建文件>给文件里边写东西>写个反馈给控制台> ...
- jq和js插件的各个文件夹里放置的内容
1. demo文件夹,存放各种实例. 2. dist文件夹,全称是distribution.在某些框架中,因为开发和发布的内容或者代码形式是不一样的(比如利用Grunt压缩等等),这时候就需要一个存放 ...
- Web 在线文件管理器学习笔记与总结(10)查看文件夹中的内容
① 读取文件夹大小 a. 封装计算文件夹大小的函数 b. 打开文件夹 c. 循环判断文件夹下的内容是文件还是文件夹,如果是文件,则累积相加文件的大小:如果是文件夹,则递归调用该函数 注意两个问题: ...
- GIt帮助文档之忽略某些文件——忽略python虚拟环境文件夹(转)
前言:为避免多个Python项目下安装库之间的冲突,或为轻松打包某个项目,建议在每个项目文件夹下安装Python虚拟环境,并在虚拟环境内进行操作,之后你安装的任何库和执行的任何程序都是在这个环境下运行 ...
- Python打包文件夹的方法小结(zip,tar,tar.gz等)
本文实例讲述了Python打包文件夹的方法.分享给大家供大家参考,具体如下: 一.zip ? 1 2 3 4 5 6 7 8 9 10 11 import os, zipfile #打包目录为zip文 ...
- 用java实现删除文件夹里的所有文件
package com.org.improve.contact; import java.io.File; public class DeletePaper { /** * @param args * ...
随机推荐
- PHP 调用 shell
可以使用的命令: popenfpassthrushell_execexecsystem 1.popen resource popen ( string command, string mode ) 打 ...
- 异常:ORA-01013: 用户请求取消当前的操作
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/bnmnba/article/detail ...
- 后台(一)vue+element-ui(全局配置)
vue init webpack 项目名称 npm install axios //先安装! npm install --save axios vue-ax ...
- antd 表格隔行变色
rowClassName={(record, index) => { let className = 'light-row'; if (index % 2 === 1) className = ...
- centos 7 yum 安装 mysql glib 安装 mysql
centos 7 YUM 在线安装版 1.wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm 下载 2.rpm ...
- Python Tinker学习笔记
一直在简单看看python,这次项目需要做个界面,最好是要跨平台的,之前考虑QT,但是树莓派上QT跨平台编译一直装这有问题,后来发现Python不就可以么? 于是决定用python做个界面,但是做界面 ...
- ZR#999
ZR#999 解法: 一道计数题,看到要求必须 $ m $ 个标号,所有标号至少出现一次的方案. 很容易想到可以容斥,但容斥这个东西是一种很神奇的东西,你可以看出来一道题需要容斥,但你就是不知道怎么容 ...
- idea创建Web项目(基于Maven多模块)
简述:通常我们开发的项目结构是由多个modules项目组合而成,并且由有个parent的maven项目整体管理.废话少说,直接进入创建过程. 创建parent项目 1.打开idea工具,按照下图操作, ...
- DES算法实现
概述(团队项目) DES是一个分组加密算法,它以64位为分组对数据加密.同时DES也是一个对称算法:加密和解密用的是同一个算法.DES是一个包含16个阶段的"替换–置换"的分组加密 ...
- XGBoost、LightGBM、Catboost总结
sklearn集成方法 bagging 常见变体(按照样本采样方式的不同划分) Pasting:直接从样本集里随机抽取的到训练样本子集 Bagging:自助采样(有放回的抽样)得到训练子集 Rando ...