gpt4 book ai didi

python - 如何编写 python 包

转载 作者:太空狗 更新时间:2023-10-30 02:34:02 24 4
gpt4 key购买 nike

我正在尝试重构我的代码(一堆核心模块和一些应用程序位于一个公共(public)目录中)。我想得到这个结构

Root
__init__.py
Core
__init__.py
a.py
b.py
c.py
AppOne
__init__.py
AppOne.py
AppTwo
__init__.py
AppTwo.py
AppThree
__init__.py
AppThree.py

哪里AppOne.py , AppTwo.pyAppThree.py导入模块 a , bcCore包。

我不明白如何写__init__.py文件和导入语句。我读过了 http://docs.python.org/tutorial/modules.htmlhttp://guide.python-distribute.org/creation.html .我收到诸如“尝试在非包中进行相对导入”或“无效的 Sintaxis”之类的错误

最佳答案

您需要将python模块的目录添加到sys路径。

如果你有这样的东西

Root
here_using_my_module.py
my_module
__init__.py --> leave it empty
a.py
b.py
c.py

您需要将模块目录添加到 sys_path

//here_using_your_module.py
import os, sys

abspath = lambda *p: os.path.abspath(os.path.join(*p))

PROJECT_ROOT = abspath(os.path.dirname(__file__))

sys.path.insert(0,PROJECT_ROOT)

import a from my_module

a.do_something()

关于python - 如何编写 python 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10644460/

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