我正在处理这个名为traverseDir的递归函数,在这里之前一切都很顺利,我不知道如何遍历列表并对列表中的每个元素调用我的traverseDir函数。如果你能帮忙的话,非常感谢!你知道吗
path = sys.argv[1]
def traverseDir(path):
allFile = 0
someFile = 0
if os.path.isfile(path): # base case
print(sys.argv[0])
allFile += 1
if path.endswith('.some'):
someFile += 1
else:
files = os.listdir(path)
return files
#if len(files[0]) <= 1: these 2 lines are where I can't figure out
# return traverseDir(item)
一个名为^{} 的内置函数已经做到了这一点。但是,为了回答您的问题,您需要遍历
files
列表。您还需要通过递归向下传递all_files
和some_files
,这样它们就可以在运行时累积起来。您还需要返回all_files
和some_files
(python允许您以元组的形式返回多个值)。然后可以为all_files
和some_files
添加递归返回的值。你知道吗这将对列出的每个文件调用
traverseDir()
。反过来,该递归将对它列出的每个文件调用traverseDir()
。你知道吗操作系统列表目录
os.步行
相关问题 更多 >
编程相关推荐