利用os模組求乙個資料夾的大小。

2022-08-29 04:12:12 字數 1148 閱讀 4566

一、遞迴方法

1

defsize(path):  #給定乙個初始的資料夾路徑

2 num =0     

3 list_name =os.listdir(path)  #利用os模組方法,以列表的形式獲得該資料夾下面的所有檔案或者資料夾名稱

4for i in

list_name:

5 file_name =os.path.join(path,i)  #迴圈的i是檔案或者資料夾的名稱,需要拼接出絕對路徑6if

os.path.isdir(file_name):      #判斷該路徑是否為資料夾

7 num1 =size(file_name)      #***此處一定要用乙個變數來接收遞迴函式的返回值

8 num +=num1

9else

:10 num +=os.path.getsize(file_name)   #計算檔案的大小

11return

num12

print(size("

f:\pythonhomework

"))

二、迴圈、堆疊思想

1

deffunc(lst):  #先將資料夾的路徑以列表的形式傳人函式

2 size =0

3while

lst:  #列表只要不為空就執行迴圈

4 path =lst.pop()   #將列表中最後乙個路徑取出來

5 list_name =os.listdir(path)

6for i in

list_name:

7 path_name =os.path.join(path,i)8if

os.path.isdir(path_name):910

else

:11 size +=os.path.getsize(path_name)

12return

size

13 lst = ["

f:\pythonhomework"]

14print(func(lst))

linux怎麼檢視乙個資料夾的大小

linux檢視乙個資料夾的大小的命令為 du max depth 1 lh 該資料夾的完整路徑 例,查詢 var資料夾的大小 du max depth 1 lh var du 遞迴查詢該路徑下所有檔案的大小 若不加任何引數,則顯示資料夾內的所有檔案,包括資料夾內子資料夾的內容 命令解釋 引數 max...

遍歷乙個資料夾所有檔案

標籤 c 舉報分類 c 41 本文利用findfirstfile findnextfile 函式歷遍指定目錄的所有檔案,最基礎的歷遍所有檔案。一下 尚無法解決檔名為中文時的亂碼問題,以及無法分別無字尾的檔名和資料夾名的區別。findfirstfile 用於獲得指定目錄的第乙個檔案。其原型為 lpfi...

linux中如何查詢乙個資料夾的大小呢?

下文筆者將講述linux中檢視資料夾大小的方法,如下所示 1 方法一 ls lht會列出當前目錄下每個檔案的大小,同時也會給出當前目錄下所有檔案大小總和 2 方法二 du sh 也會列出當前資料夾下所有檔案對應的大小 把 替換為具體的檔名,會給出具體檔案的大小 下文筆者將講述linux中檢視資料夾大...