我正在使用Python 2.7。我不清楚如何在Python中嵌入Python,如下所示:http://docs.python.org/2.7/extending/embedding.html。C++ Python導入類;調用方法
我在這裏有一個名爲test.py文件的簡單Python的例子:
class math:
#def __init__(self):
def add(self, num1, num2):
return num1 + num2
def subtract(self, num1, num2):
return num1 - num2
蟒蛇,我會做這樣的事情:
>>> from test import math
>>> m = math()
>>> a = m.add(1, 2)
>>> s = m.subtract(1, 2)
我有一些開始C++代碼來做到這一點:
PyObject *pName, *pModule;
Py_Initialize();
pName = PyString_FromString("test");
pModule = PyImport_Import(pName);
這似乎工作得很好。但是,這似乎相當於在Python中這樣做:
import test
如何導入Python類數學?
感謝
謝謝。完全按照預期工作。我做的唯一不同的是不包括setenv()調用。這在MSVS 2008 C++中似乎不可用,或者,我不知道在哪裏可以找到它。沒有它,測試運行良好。 – 2013-05-14 15:30:14
@DooDah聽起來你的模塊已經在'PYTHONPATH'中了。在沒有'setenv'行的情況下,我在Ubuntu上從當前工作目錄導入時遇到了問題。 – Aya 2013-05-14 15:36:49