我想保存我的.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保存在上面。这有什么问题?
答案 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
加入目录的一部分。