我尝试通过以下方式迭代文件目录:
path = r'C:\my\path'
for filename in os.listdir(path):
nodes_arr = np.genfromtxt(filename, delimiter=',')
我收到一个错误:
IOError("%s not found." % path)
OSError: 10028057_nodes not found.
当我尝试通过以下方式打印文件时:
path = r'C:\my\path'
for filename in os.listdir(path):
print(filename)
我得到一个列表,它包含目录中的所有文件,第一个是“10028057_nodes”,它提供了错误...
最佳答案
os.listdir
仅返回文件名。 Python IO 函数,无论是直接调用 (open
...) 还是通过 numpy
调用,实际上并不知道这些名称位于 path
中。除非你的路径是当前目录(Python 会假定),否则这将失败 - 因为当前目录中不存在所述文件名。
您需要的是将路径连接到文件名,因此:
nodes_arr = np.genfromtxt(os.path.join(path, filename), delimiter=',')
关于python - 迭代目录时出现文件未找到错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59300346/