C++ 调用 Python 模块 1

参考:https://blog.csdn.net/tobacco5648/article/details/50890106

1 链接到 Python 调用库

Python 安装目录下已经包含头文件( include 目录)和库文件 ( Windows 下为 python36.lib)。

需要#include "C:\\Python36\\include\\Python.h"

并在项目链接那里链接到python36.lib

2 直接调用 Python 语句
#include "python/Python.h"
int main()
{

std::cout << "开始运行 python:\n";
Py_Initialize(); // 初始化
PyRun_SimpleString("print 'hello'");
Py_Finalize(); // 释放资源
}

编译,失败?LNK2001 无法解析的外部符号 __imp__Py_Finalize

明明已经连接了,为啥呢,原来必须和系统位数一样,我是64位系统,编译时必须指定release x64

改完之后,编译就成功了。

运行,还是出错?SyntaxError: Missing parentheses in call to 'print'. Did you mean print('hello')?

 原来是调用的python语句的语法问题,python3后来的print必须加括号。

 PyRun_SimpleString("print 'hello'");==>>>>PyRun_SimpleString("print('hello')");

运行,成功!

猜你喜欢

转载自www.cnblogs.com/sinceret/p/12797069.html