直接运行以下代码会出错:

from cvxopt import matrix, solvers
P = matrix([[1.0, 0.0], [0.0, 0.0]])
q = matrix([3.0, 4.0])
G = matrix([[-1.0, 0.0, -1.0, 2.0, 3.0], [0.0, -1.0, -3.0, 5.0, 4.0]])
h = matrix([0.0, 0.0, -15.0, 100.0, 80.0])
sol=solvers.qp(P, q, G, h)
print(sol['x'])
print(sol['primal objective'])

报错内容:

Traceback (most recent call last):
  File "C:/Users/DeniuHe/PycharmProjects/Project1/demo_test_0003.py", line 2, in <module>
    from cvxopt import matrix, solvers
  File "C:\Users\DeniuHe\AppData\Local\Programs\Python\Python37\lib\site-packages\cvxopt\__init__.py", line 50, in <module>
    import cvxopt.base
ImportError: DLL load failed: 找不到指定的模块。

import numpy as np
from cvxopt import matrix, solvers
P = matrix([[1.0, 0.0], [0.0, 0.0]])
q = matrix([3.0, 4.0])
G = matrix([[-1.0, 0.0, -1.0, 2.0, 3.0], [0.0, -1.0, -3.0, 5.0, 4.0]])
h = matrix([0.0, 0.0, -15.0, 100.0, 80.0])
sol=solvers.qp(P, q, G, h)
print(sol['x'])
print(sol['primal objective'])

问题原因就是这么简单:在没有导入numpy之前,cvxopt就是没法正常运行!

Logo

一站式 AI 云服务平台

更多推荐