下面給出了一個用於返回其參數大小總和的函數,該函數可以是單個文件/目錄或文件/目錄列表。該代碼給出了錯誤消息RuntimeError: maximum recursion depth exceeded while calling a Python object
但是我嘗試測試這個。Python:最大遞歸深度
如何解決這個問題?
感謝
蘇雷什
#!/usr/bin/python3.1
import os
def fileSizes(f):
if hasattr(f,'__iter__'):
return sum(filter(fileSizes,f))
if os.path.isfile(f):
return os.path.getsize(f)
elif os.path.isdir(f):
total_size = os.path.getsize(f)
for item in os.listdir(f):
total_size += fileSizes(os.path.join(f, item))
return total_size
listdir包含當前目錄嗎?你正在循環的迭代是什麼? –
'os.listdir()'不包含當前或父目錄。 – suresh