python - python脚本和相对导入问题
问题描述
我从 Python 开始,我尝试在几个月前在不同的测试环境(都是 ubuntu)中运行一个对我有用的简单应用程序,但是我收到一个错误,我在 google/stackoverflow 上找不到可理解的解决方案。
[root@ubuntu:/usr/local/lib/python3.5/dist-packages/appname# python3 script.py
Traceback (most recent call last):
File "script.py", line 2, in <module>
from appname import AppName
File "/usr/local/lib/python3.5/dist-packages/appname/appname.py", line 20, in <module>
from . import __version__
SystemError: Parent module '' not loaded, cannot perform relative import
我在init .py 中定义了版本变量,但它没有被导入。当我在 appname.py 中评论 (#) 这个导入/变量时,我收到另一个导入错误,其中包含来自同一文件夹和 appname.py 中的文件的相对路径,例如
from .test import anyfunction
其中 test.py 与 appname.py 位于同一文件夹中
你知道为什么这个带有相对路径的导入不起作用吗?
谢谢你,如果这是个愚蠢的问题,我很抱歉。
解决方案
我通过在 VENV 中运行“应用程序”并将 SETUPTOOLS 升级到最新版本找到了解决方案。看起来应用程序内的模块只是冲突。
推荐阅读
- netlogo - 选择所有可能的配对之一并删除未选择的配对
- mysql - 编写查询,查找租借科幻电影 5 次以上的客户的全名。按字母顺序排列这些名称
- excel - 将个人的所有值从“是”更改为“否”
- javascript - React.js:获取“无法在'Node'上执行'removeChild':要删除的节点不是该节点的子节点。”
- python - 同时运行scrapy spider和进度条
- c++ - 使用 cin.get() 初始化字符数组
- react-native - 反应本机请求失败
- python - 在 Django 中使用 Sphinx 时出现 Autodoc 错误
- javascript - 如何从 JS onclick 事件转到 Servlet 以保存/检索数据?
- python - 如何解决“JSONDecodeError:期望值:第 1 行第 1 列(字符 0)”