给定一个目录文件,打印该目录下所有子目录和文件的名称,并不断递归访问子目录,并打印其属子目录和文件名称
时间: 2023-12-10 09:41:56 浏览: 24
可以使用递归函数来实现这个功能,以下是 Python 的示例代码:
```python
import os
def print_directory_contents(path):
"""
这个函数接受文件夹的名称作为输入参数,
返回该文件夹中文件的路径和子文件夹的路径
"""
# 首先打印出当前目录的路径
print(path)
# 遍历该目录下的所有文件和子目录
for child in os.listdir(path):
child_path = os.path.join(path, child)
# 如果是子目录,递归调用该函数
if os.path.isdir(child_path):
print_directory_contents(child_path)
# 如果是文件,直接打印出文件名
else:
print(child)
# 测试代码
print_directory_contents('.')
```
在这个示例中,我们使用了 `os` 模块来处理文件和目录的相关操作。首先,我们打印出当前目录的路径,然后遍历该目录下的所有文件和子目录。如果遍历到的是子目录,我们就递归调用 `print_directory_contents` 函数,打印出该子目录下的所有文件和子目录。如果遍历到的是文件,我们就直接打印出文件名。
注意,这个示例是以当前目录作为起点,遍历当前目录及其子目录下的所有文件和子目录。如果你想要遍历其他目录,只需要将 `.` 替换成你想要遍历的目录路径即可。