【发布时间】:2021-02-26 18:35:36
【问题描述】:
我认为问题在于运行代码未导入,因为 IntelliCode 可以识别模块和函数
这是我的文件结构
-a.py
-tests/
-__init__.py
-b.py
-pages/
-__init__.py
-c.py
这里是 c.py
from tests import b
def hello_from_c():
print('C says hi')
这里是 b.py
import pages.c as c
c.hello_from_c()
当我在终端中运行“python a.py”并导入 b 或 c 时,它运行良好。 但是,当我在终端中将 c 或 b 作为脚本运行时,尝试导入另一个文件时,我得到“没有名为测试的模块”或“没有名为页面的模块”。即使 IntelliCode 没有显示任何错误。
发生这种情况的原因是什么?
(更新)
运行python -m [packagename].[filename(no .py)] 工作
【问题讨论】:
-
import ..tests? -
不,它可以识别导入,因为我可以调用函数。就在我在终端中运行它时,我得到了错误
-
不确定你的意思。我假设您在
c.py内有import tests或在b.py内有import pages -
请发布您的实际代码。
-
我在那里添加了代码,它似乎没有问题只在运行时导入它
标签: python file terminal module package