1.#include <Python.h>报错
\python\python37-32\include\object.h(448): error C2059: 语法错误:“;”
\python\python37-32\include\object.h(448): error C2238: 意外的标记位于“;”之前
原因: Python 和 Qt 的关键词 slots 冲突
解决:
#pragma push_macro(“slots”)
#undef slots
#include <Python.h>
#pragma pop_macro(“slots”)
2. 找不到python37_d.lib
原因:
\Python\Python37-32\libs中没有python37_d.lib
解决:
安装Python时,(己安装则启动安装包进行修改)
选择 “Download debug binaries”
2.PyImport_ImportModule返回值为空:
可能原因: 1.py文件位置问题
2.py文件未写正确
解决:
1.py文件位置问题
放置于 \Python\Python37-32\Lib\ 下
- 修正py文件
比如:
import paramiko
def push2Linux():
hostname = '192.168.131.130' #linux主机IP地址
port = 22 #端口
t=paramiko.Transport((hostname,port))
username = 'x' #用户名
password = 'x' #密码
t.connect(username=username,password=password)
sftp = paramiko.SFTPClient.from_transport(t)
sftp.put(r'D:\xx\Documents\Python\config.xml', '/home/x/Downloads/config.xml')
sftp.close()
print('上传完成!')
将 import paramiko
去掉,
则可以用PyImport_ImportModule加载成功