gpt4 book ai didi

python - 从导入的函数打开文件

转载 作者:行者123 更新时间:2023-11-30 21:52:01 29 4
gpt4 key购买 nike

我已经在Python中与绝对路径和相对路径“斗争”了一段时间,我知道关于这个主题有很多问题,但我找不到我的特定问题的答案。

鉴于以下项目结构:

package/
subpackage1/
moduleX.py
moduleY.py
subpackage2/
moduleZ.py
folder1/
file1.txt

我正在从 moduleZ.py 导入 moduleX.py 中的一个函数,该函数需要存储在 file1.txt 中的信息才能工作。我从 moduleZ.py 导入该函数没有问题,但是由于它需要 file1.txt 我收到错误消息“没有这样的文件或目录”。

我的问题是:当 moduleZ.py 中的函数在导入后尝试打开 file1.txt 时,它会考虑哪个路径?

我希望它能够使用相对路径,但我找不到让它工作的方法。

提前致谢。

最佳答案

My question is: When the function from moduleZ.py tries to open file1.txt after being imported which path does it consider?

它考虑从运行代码的人/进程的工作目录开始的相对路径。

查找数据文件的标准方法之一是记下包根目录的目录名称,即。在package/__init__.py中:

DIRNAME = os.path.dirname(__file__)

然后每当您想访问文件时:

from package import DIRNAME
file1_txt = os.path.join(DIRNAME, 'subpackage2', 'folder1', 'file1.txt')

关于python - 从导入的函数打开文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59994911/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com