python - 导航到目录树并获取每个文件的路径
问题描述
我正在使用以下命令浏览目录:
for dirName, subdirList, fileList in os.walk(base_dir):
for fname in fileList:
file_path = os.path.join(dirName, *subdirList, fname)
这file_path
是不正确的,因为它添加了所有子目录,而我想要的是获取文件的完整路径。
解决方案
os.walk
一开始有点难以掌握。在:
for dirName, subdirList, fileList in os.walk(base_dir):
dirName
遵循当前subdirList
和fileList
。在每次迭代中,三元组都会更新为每个dirName
.
所以你不能混合目录列表和文件列表。做就是了
file_path = os.path.join(dirName, fname)
作为旁注,如果您不需要目录,则可以“静音”目录列表:
for dirName, _, fileList in os.walk(base_dir):
推荐阅读
- pandas - 根据每行的列表值对 Pandas 数据帧进行排序
- python - 我正在尝试为学校项目创建二进制搜索程序,但某些数字会导致无限递归
- node.js - 为什么这个对 Ingress (GKE) 的 HTTP GET 请求总是返回 400(错误请求)错误?
- prestashop - Prestashop 1.7 白页
- php - Laravel 重定向离开方法重定向到自己的域
- c# - 在控制台中读取文本,从其他来源创建
- vb.net - 如何在图片框中将结果显示为一行
- aws-sdk - 用于访问 Parameter Store 的 AWS 开发工具包跨账户角色
- python - subprocess.PIPE 阻止可执行文件关闭
- javascript - “TypeError:tasks.map 不是函数”