python3.x - c++調(diào)用python3
問(wèn)題描述
環(huán)境:win10 + vs2015( Debug 32位) + anaconda3(32位)
首先需要配置環(huán)境,創(chuàng)建win32控制臺(tái)程序,然后對(duì)工程進(jìn)行配置。 項(xiàng)目–>屬性–>vc++目錄–>包含目錄 添加python安裝目錄中include目錄 項(xiàng)目–>屬性–>vc++目錄–>庫(kù)目錄 添加python安裝目錄中l(wèi)ibs目錄 鏈接器–>輸入–>附加依賴項(xiàng) 添加python36.lib
到這步運(yùn)行程序:
#include <iostream> #include <stdio.h>#include <stdlib.h>#include <Python.h>#include <string.h>using namespace std;int main(){ Py_Initialize(); PyRun_SimpleString('import pylab'); PyRun_SimpleString('pylab.plot(range(5))'); PyRun_SimpleString('pylab.show()'); Py_Exit(0); return 0;}
報(bào)錯(cuò)找不到 python36_d.lib。
百度解決方案:如果 C++ 工程采用debug版本,需要將 python 安裝目錄里 libs 文件夾下的 python36.lib 文件復(fù)制,并將名字改成 python36_d.lib
運(yùn)行崩潰:
求助如何解決。
------------------------------補(bǔ)充下---------------------
我的機(jī)器裝了anaconda2和anaconda3,都是32位的,目前只用python3的,安裝目錄分別為:E:SoftwaresAnaconda3E:SoftwaresAnaconda2
問(wèn)題解答
回答1:還是用py2吧,py2可以用,py3的上述問(wèn)問(wèn)題我還是沒(méi)有解決
回答2:這個(gè)報(bào)錯(cuò)寫得還算比較清楚的,加載 encodings 模塊失敗,這個(gè)要看是在什么地方 import 的。 然后檢查
是否有這個(gè)模塊
如果有這個(gè)模塊,這個(gè)模塊的地址是否在環(huán)境變量里面
相關(guān)文章:
1. html - 移動(dòng)端radio無(wú)法選中2. javascript - Element UI表格錯(cuò)行3. mysql - 這條聯(lián)合sql語(yǔ)句哪里錯(cuò)了4. 正則表達(dá)式 - python pandas的sep參數(shù)問(wèn)題5. javascript - es6模塊加載export的輸出值有點(diǎn)沒(méi)太搞明白6. javascript - 在靜態(tài)頁(yè)面上用load 引入的頁(yè)面文件問(wèn)題?7. html - IOS二維碼識(shí)別問(wèn)題8. css - 移動(dòng)端 line-height安卓錯(cuò)位,蘋果機(jī)正常用,縮放解決了,可是又出來(lái)了占位的問(wèn)題9. mysql - 數(shù)據(jù)庫(kù)建字段,默認(rèn)值空和empty string有什么區(qū)別 11010. javascript - vue-resource如何終止之前的ajax請(qǐng)求?
