我试图在一些Python代码中包含一个Julia (PowerModelsDistribution.solve_mc_opf)。这个包在朱莉娅里很管用,但是我不得不把它和PyJulia放在一起。我试过几件事:
1.
from julia import Pkg
Pkg.activate("C:/Users/Aisling/.julia/environments/pmd") # pmd is my Julia env but I've also tried this in my base
from julia.PowerModelsDistribution import solve_mc_opf
结果在
ImportError Traceback (most recent call last)
<ipython-input-33-6e83bbbb609c> in <module>
----> 1 from julia.PowerModelsDistribution import solve_mc_opf
C:\ProgramData\Anaconda3\lib\site-packages\julia\core.py in load_module(self, fullname)
258 JuliaModule(self, fullname))
259
--> 260 raise ImportError("{} not found".format(juliapath))
261
262
ImportError: PowerModelsDistribution.solve_mc_opf not found
import julia
jl = julia.Julia()
res = jl.run(PowerModelsDistribution.solve_mc_opf("documents/powermodelsdistribution/test/data/opendss/case3_unbalanced.dss", ACPUPowerModel, Ipopt.Optimizer))
在以下方面的成果:
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-29-2af5367df821> in <module>
----> 1 res = jl.run(PowerModelsDistribution.solve_mc_opf("documents/powermodelsdistribution/test/data/opendss/case3_unbalanced.dss", ACPUPowerModel, Ipopt.Optimizer))
C:\ProgramData\Anaconda3\lib\site-packages\julia\core.py in __getattr__(self, name)
174 def __getattr__(self, name):
175 try:
--> 176 return self.__try_getattr(name)
177 except AttributeError:
178 if name.endswith("_b"):
C:\ProgramData\Anaconda3\lib\site-packages\julia\core.py in __try_getattr(self, name)
197 return self._julia.eval(jl_fullname)
198
--> 199 raise AttributeError(name)
200
201
AttributeError: solve_mc_opf
我很困惑。
发布于 2022-07-13 16:56:15
我觉得你想做的是:
from julia import PowerModelsDistribution
PowerModelsDistribution.solve_mc_opf("...")
因此,您应该将一个Julia模块导入Python,而不是函数。
https://stackoverflow.com/questions/72968412
复制相似问题