怎样用QtCreator编辑运行python脚本

Python023

怎样用QtCreator编辑运行python脚本,第1张

不知道你是在Windows还是在linux系统上

在windows上面先 Win+R 然后 进入CMD 命令行-> 输入:cd py文件的目录

进入你py文件所在的目录后 输入:python 脚本文件名.py 就可以运行了

在linux下,模拟终端输入:python 然后把你的脚本拖进命令行就可以运行了

这个看你要求了,如果只是单纯调用,和Qt没什么关系,直接看python手册中C、C++调用python相关的内容就行了。

如果你的python代码中还需要操作Qt相关的东西,那么你需要的 PythonQt 这个第三方的模块(概念上类似于Qt自己的QtScript模块)

在C++中,“类函数指针”和传统的“函数指针”,是两个完全不同的东西。

你取一个类的成员函数的地址,得到的是一个类函数指针,也叫成员函数指针。即使你的成员函数定义看起来和普通函数原型完全一样,它也和这个原型的普通函数指针完全不同,彼此之间不能转换。

PyEval_SetTrace要求传入的是一个传统的函数指针,你传入一个类函数指针,当然是不行的。编译器报错是说无法将一个类函数指针转换为函数指针。

C++的类函数指针,是一个非常难用的东西,有非常多奇怪的特性,而且不同编译器对它的支持大不相同,是C++著名的复杂性来源之一,建议不要使用。

你想要的东西,实际上是一个“委托”的概念,不过可惜的是C++并不支持委托。使用boost::function可以实现类似功能,但python的C API接口却不支持boost::function,所以也不行。

你这种情况,最简单的方法还是用传统的函数指针,使用普通函数包装下类的成员函数,然后把普通函数的指针传给python。