我在打开文件时遇到问题,python(2.7)告诉我没有这样的文件,但确实存在。
csvData = None
csvHeader = None
os.chdir("../result/files/")
for fileName in os.listdir("."):
if fileName.endswith(".csv"):
print fileName
with open("../result/files/"+fileName, 'rb') as csvFile:
readerCsv = reader(csvFile, delimiter = ';')
csvHeader = readerCsv.next()
_unused = readerCsv.next()
self.data = list.append(list(readerCsv))
此代码用于读取5个csv文件并将其内容存储在数据中(第一行除外)
首先chdir告诉我他找到了Stats20120903.csv然后我要求程序打开所述文件但是我收到错误:
IOError: [Errno 2] No such file or directory: '../files/Stats20120903.csv'
为什么?
由于
答案 0 :(得分:1)
待办事项
with open(fileName, 'rb') as csvFile:
而不是相对于您更改为的目录。
答案 1 :(得分:1)
os.chdir
不会告诉您目录中的内容,它会更改当前的工作路径。您提供的所有相对文件路径都与工作目录相关。
你应该
os.chdir("../result/files/")
并调用os.listdir(“../ result / files /”)或"../result/files/"
添加到您要打开的文件名中。答案 2 :(得分:0)
您可以尝试使用os.path.abspath()
找出Python尝试使用的实际路径。