我正在使用
从ascii文件中读取文件名with open('FilenamesAsciiFile.txt') as f:
content = f.readlines()
不幸的是,当我尝试打开文件或检查它是否存在时,我收到错误:
filename = content[0]
print filename
print type(filename)
--> myFile.h5
--> <type 'str'>
import os.path
os.path.isfile(filename)
--> False
当我对字符串进行硬编码时,一切正常
os.path.isfile('myFile.h5')
--> True
字符串是否是该函数的错误输入类型?
答案 0 :(得分:5)
你需要从行修剪'\ n':
filename = content[0].strip()
答案 1 :(得分:5)
您读入的文件名包含尾随的新行字符。
因此,myFile.h5
实际上是myFile.h5\n
。在检查新行之前,您需要删除新行。
import os
os.path.isfile(filename.strip())