python中的文件路径

时间:2013-09-23 07:50:22

标签: python json file

我正在尝试加载json文件,但它给出了一个错误No such file or directory:

with open ('folder1/sub1/sub2/sub2/sub3/file.json') as f:
    data = json.load(f)
print data

上述文件main.py保留在folder1之外。所有这些都保存在项目文件夹下。

所以,目录结构是Project / folder1 / sub1 / sub2 / sub2 / sub3 / file.json 我哪里错了?

3 个答案:

答案 0 :(得分:9)

我更喜欢从文件目录

开始指向pathes
import os
script_dir = os.path.dirname(__file__)
file_path = os.path.join(script_dir, 'relative/path/to/file.json')
with open(file_path, 'r') as fi:
    pass

这允许不关心工作目录的更改。而且这允许使用它的完整路径从任何目录运行脚本。

python script/inner/script.py

python script.py

答案 1 :(得分:1)

我会使用os.path.join方法从当前目录开始形成完整路径。

类似的东西:

json_filepath = os.path.join('.', 'folder1', 'sub1', 'sub2', 'sub3', 'file.json')

答案 2 :(得分:0)

与往常一样,初始斜杠表示路径从根开始。省略初始斜杠以指示它是相对路径。

相关问题