【问题标题】:Python, Windows. Addressing folder in parent directory蟒蛇,Windows。寻址父目录中的文件夹
【发布时间】:2019-04-24 13:21:09
【问题描述】:

我有一个“main”文件夹,里面有两个文件夹:“Data”和“Code”。 “数据”文件夹包含带有 .txt 文件的“limited_scope”文件夹。从“代码”文件夹中,我运行带有行的 my_code.py 文件:

import os
directory_path = '..\\Data\\limited_scope\\'
directorie = sorted(os.listdir(directory_path))

并得到错误:

FileNotFoundError: [WinError 3] The system cannot find the path specified: '..\\Data\\limited_scope\\'

当我更改为:

directory_path = 'C:\\Users\\myname\\Documents\\main\\Data\\limited_scope\\'

错误消失了。

谁能说出这个错误的原因?

【问题讨论】:

    标签: python windows directory cd


    【解决方案1】:

    在执行 my_code.py 时,您当前的工作directpry 应该是 Code 目录,那么这将起作用。

    否则,您可以尝试使用以下代码,该代码将使用 my_code.py 的文件夹并使用它:

    import os
    current_dir = os.path.dirname(__file__)
    directory_path = os.path.join(current_dir,'..\\Data\\limited_scope\\')
    directorie = sorted(os.listdir(directory_path))
    

    【讨论】:

    • 如果您使用名称script_dir 则不会那么混乱,因为它不一定是当前目录。绝对使用这种方法来访问程序内部的数据。程序不控制其初始工作目录,即调用者想要加载或创建文件的位置,而不是程序查找自己的数据文件的位置。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-17
    • 2011-07-14
    • 1970-01-01
    • 2011-06-07
    相关资源
    最近更新 更多