将.csv文件保存在与.py文件相同的目录中

时间:2016-08-16 11:16:43

标签: python csv

我想保存我的.csv文件,这是因为某些查询与.py文件在同一位置的结果。

import os
with open(os.path.dirname(os.path.abspath(__file__))+'MyCSVFile.csv','wb') as output_file:
    dict_writer = csv.DictWriter(output_file, keys)
    dict_writer.writeheader()
    dict_writer.writerows(myList)  

我似乎总是把我的csv文件放在一个目录之前。当我打印os.path.dirname(os.path.abspath(__ file__))时,它给了我正确的路径,但输出MyCSVFile保存在上面。这有什么问题?

2 个答案:

答案 0 :(得分:2)

您必须使用os.path.join将csv文件保存在同一目录中

import os

dirname = os.path.dirname(os.path.abspath(__file__))
csvfilename = os.path.join(dirname, 'MyCSVFile.csv')

with open(csvfilename, 'wb') as output_file:
    dict_writer = csv.DictWriter(output_file, keys)
    dict_writer.writeheader()
    dict_writer.writerows(myList)

这应该是例外

答案 1 :(得分:1)

取消对os.path.dirname的通话,因为您已拨打os.path.abspath。调用dirname将返回目录组件,因此您将获得层次结构中的目录。顺便说一句:使用os.path.join加入目录的一部分。