无法在python中打开文件

时间:2013-03-04 12:05:21

标签: python python-2.7

我在打开文件时遇到问题,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'

为什么?

由于

3 个答案:

答案 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尝试使用的实际路径。