什么是获得递归函数来构建返回列表的好方法?比方说,我有一个功能,像在所有子目录中生成文件和目录列表如下:如何构建一个列表的递归函数
def print_directory_listing(directory = "."):
for file_structure in os.listdir(directory):
file_structure_path = os.path.join(directory, file_structure)
if os.path.isdir(file_structure_path):
print_directory_listing(file_structure_path)
else:
print(file_structure_path)
而不是打印出来的一切,我怎么能修改此返回所有的文件和目录的列表?例如,是否有一个函数附加文件的全局列表是好事?
请注意,我并不要求有关os.walk
;我正在问一个关于Pythonic方法获得递归函数来构建和返回列表的一般性问题。
为什么你不使用'os.walk()'这正是为了这个目的? – Kasramvd
@ Kasramvd你为什么不作出回答而不是评论,因为这绝对是一个答案? –
@Loïc因为这个问题是重复的。 – Kasramvd