Python分析C盘大文件[夹]

__author__ = ‘baron‘

import os
import codecs
from os.path import join, getsize

def getdirsize(dirDict, rootpath):
    dirsize = 0L
    for root, dirs, files in os.walk(rootpath):
        if root == rootpath:
            for dir in dirs:
                dirDict, fsize = getdirsize(dirDict, join(rootpath, dir))
                dirsize += fsize
            try:
                dirsize += sum([getsize(join(rootpath, file)) for file in files])
            except:
                pass
    if dirsize / 1024 / 1024 != 0 and rootpath not in dirDict:
        dirDict[rootpath] = dirsize / 1024 / 1024
        print len(dirDict)
    return dirDict, dirsize

if __name__ == ‘__main__‘:
    write_path = ‘C:\\Users\\baron\\Desktop\\LOG.txt‘
    write_file = codecs.open(write_path, ‘w‘, encoding=‘UTF-8‘)
    rootpath = ‘C:\\‘
    dirDict = {}
    for file in os.listdir(rootpath):
        if file.startswith(‘$‘):
            continue
        if os.path.isdir(join(rootpath,file)):
            dirDict, fsize = getdirsize(dirDict, join(rootpath, file))
            seq_dict = sorted(dirDict.items(), key=lambda t: t[1], reverse=True)
            for item in seq_dict:
                write_file.write(‘\t‘.join([item[0], ‘%.1f‘ % item[1]]).decode(‘gbk‘)+‘\n‘)

时间: 2024-11-08 19:06:01

Python分析C盘大文件[夹]的相关文章

python动态import某个文件夹下的模块

因为有  "用户上传脚本,动态运行"的需求,所以要动态地import用户上传的模块 所以写了个函数动态地import # -*- coding: utf-8 -*- import os import sys import os.path import Queue import commands def test(rootDir): #判断传入的路径下是否有"__init__.py"这个文件了,如果没有则创建,否则import会认为没有这个moudle if os.p

python批量改动指定文件夹文件名称

这小样例仅仅要是说明用python怎么批量改动指定文件夹的文件名称: 记得要把脚本跟改动的文件放在同一个文件夹下 #encoding:utf-8 import os import sys files = os.listdir('D:\\1') #路径能够自己 for name in files: a = os.path.splitext(name) if a[1] == '.txt': #txt能够自己手动改动成你想改的文件名称 newname = a[0]+'.py' #.py也是能够改动 p

python获取Windows特殊文件夹路径

有时候你想给你的程序添加桌面快捷方式,但却连桌面的准确路径都不知道,还好微软的API给出了一些特殊文件夹路径的获取方法,再利用python的win32com模块(非标准库)即可在python中实现同样的操作! # -*- coding: cp936 -*- from win32com.shell import shell from win32com.shell import shellcon #获取"启动"文件夹路径,关键是最后的参数CSIDL_STARTUP,这些参数可以在微软的官方

quick-cocos2d-x教程3:程序框架内文件夹分析之docs文件夹

如今我们分析框架中的docs文件夹.看看这个文档文件夹中,究竟放了那些对我们实用的东西. docs文件夹分析 UPGRADE_TO_2_2_3.md 就是讲升级的变化.详细说明:quick-cocos2d-x 2.2.3 须要的注意的事项和代码改动范例. 项目执行时,假设出现 [DEPRECATED] 相关信息,应该将这些已经作废的 API 替换为新 API. 已作废API 请參考 framework/deprecated.lua 文件. HOW_TO_USE_PROJET_MAC_AND_WI

python 实现彻底删除文件夹和文件夹下的文件

python 中有很多内置库可以帮忙用来删除文件夹和文件,当面对要删除多个非空文件夹,并且目录层次大于3层以上时,仅使用一种内置方法是无法达到彻底删除文件夹和文件的效果的,比较low的方式是多次调用直到删除.但是,我们可以结合多个内置库函数,达到一次删除非空文件夹,不管其目录层次有多深. import os import shutil import traceback import globalvar def misc_init() # clean the test result folder

Python如何读取指定文件夹下的所有图像

(1)数据准备 数据集介绍: 数据集中存放的是1223幅图像,其中756个负样本(图像名称为0.1~0.756),458个正样本(图像名称为1.1~1.458),其中:"."前的标号为样本标签,"."后的标号为样本序号 (2)利用python读取文件夹中所有图像 1 ''' 2 Load the image files form the folder 3 input: 4 imgDir: the direction of the folder 5 imgName:t

Python批量删除指定文件夹下的指定类型的文件

Python作为一种脚本语言,其非常适合文件级的各种操作.下面的代码可以批量删除指定文件夹下的全部特定类型(CSV类型)的文件. import sys, csv , operator import os import glob for i in range(0, 20): path = "C:\\Python34\\Folder_" + str(i) for infile in glob.glob( os.path.join(path, '*.csv') ): os.remove(in

uCOS-Ⅱ源码分析之uC-CPU文件夹

此文共连载分析三个uCOS-Ⅱ的三个源码文件夹:uC-CPU .uC-LIB .uCOS-Ⅱ uC-LIB文件夹目录:ARM-Cortex-M3 / cpu_a.asm cpu_c.c cpu.h cpu_def.h cpu_def.h 这个文件中定义了一些 CPU 有关的宏定义,分为三类: 1.CPU 字节长度的定义,理想情况下 CPU 的字长应该是由 sizeof() 函数计算出来的,但是 sizeof() 函数必须在 CPU 运行中才能进行计算,所以在 uCOS 中直接用宏定义定义了出来

python __函数 跨文件夹引用

1. __name__ 被调用模块.__name为被调用模块的模块名,若为直接执行函数,__name__ = 该'__main__'. 运用最广泛的语句为:if __name__ == 'main': 这段语句的目的为使得该py文件既可以自我执行又可以被调用. eg.py def test(): print('this is a test') if __name__ == '__main__': test() 这段代码中,可以使其他py文件调用eg.py时,因为此时__name__为直接执行的文