私はこのようなpythonクラスを持っていA
ます。
class A:
def __init__(self, name):
self.name = name
def print_lastname(self, lastname):
print(lastname)
このコードをこのように呼び出す必要があります。
import B
a = B.A("hello")
a.print_lastname("John")
現在、A
C++ コードからこのクラスを使用する必要があります。私はここまで来ました。
Py_Initialize();
string hello = "hello";
PyObject *module, *attr, *arg;
module = PyObject_ImportModule("B"); // import B
attr = PyObject_GetAttrString(module, "A"); // get A from B
arg = PyString_FromString(hello.c_str());
instance = PyInstance_New(attr, arg, NULL); // trying to get instance of A with parameter "hello"
Py_Finalize();
しかし、私はエラーが発生しています
例外 TypeError: '/usr/lib64/python2.7/threading.pyc' からのモジュール 'threading' の 'argument list must be tuple'
import
fromステートメントからa.print_name("John")
from C++への変換方法を教えてください。どんな助けでも大歓迎です。