一、問題
有一天,你快樂的用著電腦看著少兒不宜的東西,可是電腦右下角的360的氣泡突然變紅,電腦卡的不能動(dòng)了,你趕緊查找原因,系統(tǒng)提示你C盤太滿了,沒有空間了,你著急的想要把一些不用東西請出C盤,可是人工一個(gè)一個(gè)的去找,實(shí)在是在費(fèi)勁了,你當(dāng)然可以使用360的大文件查找,可是誰叫你是有逼格的程序員呢!
于是,你撩起袖子自己干。
二、代碼
import os
from os.path import join, getsize
def get_dir_size(dir):
for root, dirs, files in os.walk(dir):
try:
for name in files:
filename = join(root, name)
size = getsize(filename )
print('There are {:.3f} Mbytes in {}'.format(size/1024/1024,filename))
with open(r'size.csv','a+') as f:
f.write('{:.3f},{}\n'.format(size/1024/1024,filename))
except WindowsError:
pass
if __name__ == '__main__':
get_dir_size(r'c:\\')
首先,導(dǎo)入要用的包,由于我們要遍歷目錄,因此導(dǎo)入import os , 還要獲取文件的大小,所以導(dǎo)入了getsize, 注意這里獲取的大小不是我們常用的多少M(fèi),所以要進(jìn)行轉(zhuǎn)換,size/1024/1024 轉(zhuǎn)換成了我們熟知的概念。