我一直在使用PyCharm和Pyomo一段时间了,由于某些原因,PyCharm无法识别从pyomo.environ
导入的任何类型。在我的代码中包含如此多的红线并且运行得非常好,真是令人生气。
作为一个简单的例子,我刚创建的项目只有这个文件,
from pyomo.environ import *
location_list = ['a', 'b', 'c']
distance_dict = {('a', 'b'): 1000,
('a', 'c'): 1500,
('b', 'c'): 2000,
('a', 'c'): 1000,
('c', 'a'): 1500,
('c', 'b'): 2000,
('a', 'a'): 0,
('b', 'b'): 0,
('c', 'c'): 0}
m = ConcreteModel()
m.locations = Set(initialize=location_list)
m.dist = Param(m.locations, m.locations, initialize=distance_dict)
m.x = Var(m.locations, m.locations, within=Binary)
除了"未使用的导入之外,这会引发ConcreteModel
,Set
,Param
,Var
和Binary
的未解决的参考警告语句"第一行。我为这个项目创建了一个虚拟环境,其中这是唯一安装Pyomo的文件,并将其设置为当前项目解释器。正如其他帖子所建议的那样,我关闭并重新打开了PyCharm。不过,我得到了这些"错误,"当然代码运行没有问题。
有什么方法可以解决这个问题吗?我想使用PyCharm,但是大量的虚假警告让我非常紧张,以至于我无法处理它。
答案 0 :(得分:1)
星级导入*
的环境有问题。如果您明确导入了所需的项目,则不会遇到此问题,例如: from pyomo.environ import (Constraint, ConcreteModel)
。