目录
1 概述
1.1 参考
这里有几个参考的:
1) 这个。
比较全面的,详细的介绍了下情况。
2)这个,很有用演示了c++调用python的各种参数转换例子,包括字符串,数值,数组,类,list等转换方法
3)这个,介绍了一些py接口的函数。
4)官方介绍:https://docs.python.org/3.9/extending/index.html
1.2 库引用
python自己封装了一个库,需要引用这个库。做一些头文件和库的配置。
网上的介绍比较多。这里有一个Ubuntu下的一个库的设置。如下:其他的情况自己搜索一下吧。
1.3 初始与善后
c++调用接口可以访问函数、类、参数等,全部封装成了一个pyobject类,用完这个需要清除,清除的方法为:
2 函数调用
函数调用有两种方法:
3 类调用
类调用,2】中有介绍,这里给一个例子。如下:
4 参数传递
4.1 传递数值类型
很多地方都介绍到了。见1】的介绍。
简单点说,数值通过BuildValue来生成。
4.2 传递字符串
4.3 传递bool
c++下的int和bool变量/值都可以传给python,转换为bool数值。
其中,如果是int的转换规则为:0转换为False。其他都转换为True;bool则直接转。
给个例子:
注意:本例子使用了另外一个调用函数的方式。
#文件 Test.py,路径:./home/kv
def TestBool( isTest):
if isTest:
print("True")
else:
print("False")
int main()
{
Py_Initialize();
if (!Py_IsInitialized())
{