在pycharm中,当我导入本地模块(来自同一目录)时,我希望消除未解析引用警告:
不将本地目录标记为源根目录,并且
不取消选中设置->;编辑器->;检查->;Python->;未解析引用选项
我认为这是一个公平的请求,因为如果我没有错的话,python允许从同一目录导入模块。我的理解是,本地目录(“.”目录)隐式地位于PYTHON路径中。你知道吗
代码实际上在命令行中工作(没有将目录放在任何PYTHON路径中),但在pycharm中也工作,这很讽刺。它的工作,但魅力:
显示未解析的引用警告和
导入函数上的CRL B将不起作用,并显示“找不到要转到的声明”
代码示例:
结构:
import_test1 (directory not mark as sources root)
__init__.py (same behaviour if not present)
main.py
tools1.py
你知道吗主.py地址:
from tools1 import add # =====> Unresolved references of tools1
print(add(2,3)) #=====> CRTL B does not work on add()
工具1.py:
def add(a, b):
return a + b
有办法摆脱这种恼人的行为吗?你知道吗
如果没有,背后的理由是什么?你知道吗
附言:这个问题很具体,我不认为这是一个重复,虽然它看起来像其他问题。你知道吗
长话短说-不,你不能。背后的理由是PyCharm不能确定你想要导入什么。通过将其标记为sources root,您可以明确地让PyCharm知道该目录将位于系统路径在执行过程中,PyCharm可以继续使用该目录中的模块。 我想说,这种行为的原因是,在Python中,几乎可以从任何地方导入任何东西,IDE不能总是确定将使用哪个模块。你知道吗
相关问题 更多 >
编程相关推荐