for root, dirs, files in os.walk(input_root):
时间: 2024-09-18 18:09:45 浏览: 57
python脚本批量将gdb导出为shp(修改版).docx
5星 · 资源好评率100%
`os.walk()` 是Python标准库中的一个功能,用于遍历指定目录及其子目录下的所有文件和子目录。在给定的代码片段[^1]中:
```python
for root, dirs, files in os.walk('/root/test'):
# 这里是对每个层级(root表示当前层级的目录,dirs是该层级的子目录名,files是该层级的文件名)
# 的迭代,对每一个迭代,你可以执行不同的操作。
# 打印目录结构(根目录和子目录)
for name in dirs:
print(os.path.join(root, name))
# 打印文件名
for name in files:
print(os.path.join(root, name))
```
这段代码会递归地访问`input_root`(在这个例子中是`/root/test`)下的所有文件和子目录,`root`变量存储的是当前正在访问的目录路径,`dirs`是一个列表,包含了当前目录下的子目录名字,而`files`则是一个列表,包含了当前目录下的文件名。`os.path.join(root, name)`用来拼接路径以便获取完整的文件或目录路径。
如果你有一个输入根目录,例如`src=r'D:\下载'`[^2],你可以这样使用`os.walk()`:
```python
for root, dirs, files in os.walk(src):
print(f"Current directory: {root}")
for dir_path in dirs:
print(f"Subdirectory: {os.path.join(root, dir_path)}")
for file_name in files:
print(f"File: {os.path.join(root, file_name)}")
```
这将显示`D:\下载`及其子目录中的所有文件和子目录。
阅读全文