我知道使用这些模块会让生活变得更轻松但是当我学习Python时,我希望能够巩固基础,然后进入快捷方式。这样,当出现更大的问题时,我可以分析并解决它。
我希望能够在1个目录中返回总文件夹和文件的数量,例如目录F:\
我想出了:
import os
def fcount(path):
count = 0
for f in os.listdir(path):
file = os.path.join(path, f)
if os.path.isdir(file):
file_count = fcount(file)
count += file_count + 1
for f in os.listdir(path):
if os.path.isfile(os.path.join(path, f)):
count += 1
return count
path = 'F:\\'
print(fcount(path))
这是最终答案。这将为您提供指定目录中的子目录和文件的总数。
答案 0 :(得分:0)
如果不使用os.walk
或使用相同内容的内容,则无法获取目录下的所有文件的数量(递归)。
此信息需要此作业,您无法以其他方式执行此操作。显然,还有其他库在做一些类似的工作但有一些变化,但重点是主要是相同的事情。
答案 1 :(得分:0)
这就像os.walk那样做的代码。这是手动递归。
edgesForExtendedLayout
注意:最初在OP中,没有第二个循环。