属性-->VC++ 目录 --> 库目录 --> E:\python3.6\libs
属性-->C/C++ --> 附加包含目录 --> E:\python3.6;E:\python3.6\include
E:\python3.6\libs中复制 python36.lib重命名为python36_d.lib
1.下载python36.dll,网址:https://www.python.org/;或者在python安装目录下找到python36.dll,我的路径是:E:\python3.6
2.将python36.dll放入目录C:\Windows\System32文件夹中即可
解决:运行平台改为x64
运行https://blog.csdn.net/heqiangflytosky/article/details/8875630?tdsourcetag=s_pctim_aiomsg 的test.c出错
修改print为Python3的版本
1、 PyRun_SimpleString("print('hi,python!')");
2、 pFunc = PyObject_GetAttrString(pModule, "HelloWorld");
0x000000001DED5172 (python36.dll) (ConsoleApplication1.exe 中)处有未经处理的异常: 0xC0000005: 读取位置 0x0000000000000008 时发生访问冲突。
将mypy.py放入D:\cpp\cToPython\ConsoleApplication1\x64\Debug 文件夹中
运行成功
1、test001.cpp发生错误
将Test001.py的print格式改为python3的格式,HelloWorld() ,Add(),TestTransferDict()测试成功
2、测试TestClass()函数
PyObject *pInstancePerson = PyInstance_New(pClassPerson, NULL, NULL);
错误 2 error C3861: “PyInstance_New”: 找不到标识符
因为我用的python3,这个标识符好像是2的
可以改为 PyObject *pInstancePerson = PyInstanceMethod_New(pClassPerson);
但是好像不能输出啊?
跑这个可以 https://www.cnblogs.com/xuyuan77/p/8419442.html
https://www.cnblogs.com/xuyuan77/p/8419442.html
https://blog.csdn.net/heqiangflytosky/article/details/8875630?tdsourcetag=s_pctim_aiomsg
参考:
https://blog.csdn.net/heqiangflytosky/article/details/8875630?tdsourcetag=s_pctim_aiomsg
http://www.cppblog.com/jacky2019/archive/2007/05/17/24269.html?opt=admin
c++访问python3-实例化类的方法 https://blog.csdn.net/love_clc/article/details/76653100
https://www.cnblogs.com/xuyuan77/p/8419442.html