os.walk()不会引发任何错误,也不会在python中产生结果

问题描述 投票:0回答:1

我正在尝试打印预定义路径中的文件名,这些路径存储在path.txt中。但是,当我执行以下代码时,没有任何错误,也没有打印文件名。

import os
with open('D:\paths.txt', 'r') as file:
data = file.read()
path = data.split(";")
print(path)
for line in path:
     for root, dirs, files in os.walk(line):
          for name in files:
               print(name)

enter image description here

python-3.7 os.walk
1个回答
0
投票

使用path = data.split(";")path已经是路径列表(尽管带引号)。进行for line in path:会不必要地遍历路径的每个字符。

您可以通过删除for line in path:并去除双引号来解决此问题:

import os
with open('D:\paths.txt', 'r') as file:
    for path in data.split(';'):
        for root, _, files in os.walk(path.strip('"')):
            for name in files:
                print(name)
© www.soinside.com 2019 - 2024. All rights reserved.