【问题标题】:How to open JSON file from another directory如何从另一个目录打开 JSON 文件
【发布时间】:2021-04-07 13:47:32
【问题描述】:

我正在尝试打开位于另一个目录中的 JSON 文件,但收到错误:

FileNotFoundError: [Errno 2] 没有这样的文件或目录:

我知道如果我提供相对路径,文件必须在同一目录中,否则必须提供完整(根)路径。

我的问题是如何避免它,因为目前我在本地测试它,但是代码正在被其他人使用,所以显然路径不能来自我的根。

知道如何解决吗?

代码如下:

with open("example.json") as commands:
        commands = json.load(commands)

【问题讨论】:

    标签: json directory path


    【解决方案1】:

    您可以指定相对于您当前位置的路径。

    例如,您在文件夹 baz 中,而 json 文件在文件夹 foo

    my
    ├── bar
    │   └── baz           <--- you're here
    └── foo
        └── example.json  <--- the file is here
    

    你可以访问json文件

    with open("../../foo/example.json") as commands:
            commands = json.load(commands)
    

    其中.. 是文件夹的父级。所以../../foo/example.json是两个父文件(baz->bar->my)然后进入文件夹foo最后到json文件example.json

     

    最后请注意,如果您使用的是 Windows,您可能需要将路径中的正斜杠 (/) 替换为反斜杠 (\)。

    【讨论】:

    • 试过完全相同的东西,但仍然收到没有这样的文件或目录的错误,即使我确定路径应该是正确的,是的,我使用的是 mac,所以正斜杠。即使我将json文件放在上面的文件夹中,它也不会找到它
    • 也许可以试试printing your current path?您运行的目录可能与您预期的不同。
    猜你喜欢
    • 2020-04-17
    • 2020-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-04
    • 1970-01-01
    • 2019-09-26
    • 1970-01-01
    相关资源
    最近更新 更多