0

假设我有以下

test/
    Main.py
test/one/
    One.py
    test1.txt
test/two/
    Two.py
    test2.txt

我想要做的是,运行 Main.py 并调用 One.py 和 Two.py 并想要读取文件。由于包含 One.py 的目录有一个文件 test1.txt,我想读取该文件并且包含 Two.py 的目录有一个文件 test2.txt

这可以简单地通过

open("one/test1.txt", "r")

并在两个文件中打开("two/test2.txt", "r")

有没有其他方法可以读取文件。这是我拿的简单案例。

我正面临这个问题。为此,我创建了设置对象并手动为该目录提供所需的位置,并将此设置对象传递给所有需要位置来读取文件的类

有不同的方法吗?

4

1 回答 1

3

如果我正确理解您的问题,您想知道正在运行的 python 文件的目录吗?

__file__您可以在 Python 程序中访问特殊变量。它返回 python 文件的路径。

要在运行脚本的目录中打开命名文件,请使用:

import os
f = open(os.path.join(os.path.dirname(__file__), "filename.txt"))
于 2012-07-03T12:37:50.303 回答