gpt4 book ai didi

python - py2app 不包括 pythonpath

转载 作者:太空宇宙 更新时间:2023-11-03 19:25:44 24 4
gpt4 key购买 nike

我正在尝试使用 py2app 构建一个应用程序。我可以构建应用程序,但是当我运行它时,我在控制台中收到 ImportError ,导入错误是没有 No module named PythonApp 这是我所有源代码所在的文件夹,其位置在我的 PYTHONPATH 中。

我一直在导入本地文件,例如from PythonApp import file,而不仅仅是import file,以帮助避免命名空间问题。

我尝试使用以下标志 python setup.py py2app --use-pythonpath 来构建它,但这似乎没有任何区别。

  • 我应该将整个导入语句更改为导入文件吗?
  • 如何让 py2app 实现我的 PYTHONPATH

最佳答案

如果我很好地理解了您的问题,您将得到以下布局:

PythonApp/
__init__.py
file.py
foo.py

并且您尝试通过 from PythonApp import filefoo.py 导入模块file。如果这是您要设置 PYTHONPATH 的唯一原因,则有一个更简单的解决方案:使用 relative imports :

from . import file

你可以在PythonApp的子包中使用from .. import file,等等。这样您就可以避免与标准模块的名称冲突。

如果您出于其他原因需要破解导入路径,您还可以在启动脚本中设置 sys.path 变量(可能 py2app 也有一些选项)。但请记住,如果将外部目录添加到导入路径中,则分发应用程序包将变得更加困难。

此外,对于 ImportError 的一个更简单的解释是 py2app 没有将您的包复制到应用程序包中。确保您在 setup()packages 参数中列出了所有软件包。

关于python - py2app 不包括 pythonpath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8203797/

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