【PyCharm编辑器】之无法导入引用手动新建的包或类,报:This inspection detects names that should resolve but don't. Due to dynamic dispatch and duck typing, this is possible in a limited but useful number of cases.

一、现象描述

如下图所示,手动新建个类包calculator.py,想在test.py文件引用它,发现一直报红线,引用失败

Unresolved reference 'calculator' less... (Ctrl+F1) 

This inspection detects names that should resolve but don't. Due to dynamic dispatch and duck typing, this is possible in a limited but useful number of cases. Top-level and class-level items are supported better than instance items.

二、解决办法

1)引用路径没有引对

既然这些类都在工程中,那么import不成功就是因为路径没对应,事实上是pycharm默认该项目的根目录为source目录,所以import使用绝对路径而不是相对路径的话,就会从项目的根目录中查找,而不是我们希望的其中的/src目录,所以import不成功。

例:from ..calculator import *

解释:第一个“.”是指本路径,第二个“.”是指上一个路径

正确方法:根据图中显示,两个.py文件都在同一目录下,只需要一个“.”就可以了

from .calculator import *

2)在pycharm中设置source路径,如图:

file –> setting –> project:XXXX –> project structure

把要引用的文件所在的文件夹设置为“sources”就可以了。

原文地址:https://www.cnblogs.com/Owen-ET/p/8304663.html