我打算在Qt C ++应用程序中使用Anaconda的Python从我的C ++代码中调用一些scikit-learn算法。由于某种原因,我无法弄清楚如何进行集成。我想知道是否有人知道逐步的过程。
答案 0 :(得分:2)
如果您的C ++代码适用于Qt <= 5.9.7。 (或更准确地说,Anaconda's current Qt version),您可以通过添加
来添加Python(在本例中为3.6)INCLUDEPATH += /home/[username]/anaconda3/include/python3.6m
LIBS += -L/home/[username]/anaconda3/lib/ -lpython3.6m
到您的.pro文件。
如果您需要的Qt版本高于Anaconda提供的版本,请查看my question here。现在,您应该可以在应用程序中包含Python.h
标头了。
备注:请记住,Python提供了自己的信号和插槽机制,显然可以与Qt冲突。这就是为什么我添加
CONFIG += no_keywords
复制到我的专业文件中,并替换了here中所述的所有信号和插槽出现。
答案 1 :(得分:1)
我不确定这是否适合您,但我会看看this article。它至少提供了一种从Qt应用程序中启动python解释器的方法。
我认为这可能有效,具体取决于事物的复杂性。
您可以在PythonQt上找到更多信息。
我不知道它将如何与外部软件包一起使用。
否则,您可以使用PySide2,它允许您使用python中的Qt5框架创建GUI。
希望对您有帮助。