저는 파이썬 클래스 A
을 가지고 있습니다.C++, PyObject의 매개 변수로 파이썬 생성자를 생성하십시오.
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")
현재, 나는 내 C++ 코드에서이 A
클래스를 사용해야합니다. 나는 이걸 가지고있다.
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();
하지만 오류
Exception TypeError: 'argument list must be tuple' in module 'threading' from '/usr/lib64/python2.7/threading.pyc'
가 어떻게 C++에서 a.print_name("John")
에 import
문에서 달성 할 수는 무엇입니까? 도움을 주시면 감사하겠습니다.
매우 멋지다! 매력처럼 작동합니다. – pseudo
굉장 - 고마워! –