IOError:[Errno 2]没有这样的文件或目录:使用python的windows中的os.path.dirname和os.path.join

时间:2017-12-31 02:01:28

标签: json python-2.7

我想使用以下代码读取文件:

import os

DIRNAME = os.path.dirname(__file__)
mydir=os.path.join(DIRNAME,'test.json')
myfile = open(mydir)  # alice.txt is in the same dir as foo.py
mytxt = myfile.read()
myfile.close()

我有以下错误:

IOError: [Errno 2] No such file or directory: 'C:/Users/user/Documents/MyTest\\test.json'

我在该目录中有test.json,但我不确定为什么会出现该错误。可能是什么问题?

1 个答案:

答案 0 :(得分:1)

Python正在混合正向和反斜杠。您可以通过替换DIRNAME中的正斜杠来解决:

DIRNAME = '\\'.join(os.path.dirname(__file__).split("/"))
mydir=os.path.join(DIRNAME,'test.json')
print mydir

返回:

C:\Users\f3k\Documents\temp\test.json