按照之前的设想,如果要罗列出本地文件的列表,那不是需要不断的判断文件夹里面的文件夹吗?或者需要使用递归函数本身,才能达到目的吧?没想到使用pop这个函数就可以了。pop是取出元素,那列表里就少了一个,判断列表的个数是否为零,就实现了递归了吧?果然模仿学习是最好的捷径。
import os
def main():
path = r'F:\BaiduNetdiskDownload\电影'
dir_list = []
dir_list.append(path)
while len(dir_list):
path = dir_list.pop()
file_list = os.listdir(path)
for file in file_list:
new_path = os.path.join(path, file)
if os.path.isdir(new_path):
dir_list.append(new_path)
else:
print(new_path)
print(dir_list)
if __name__ == '__main__':
main()