当前位置: 首页 > news >正文

玉器哪家网站做的好seo技术有哪些

玉器哪家网站做的好,seo技术有哪些,重庆市委常委人员,网站关键词设置数量一.概述 1.Python功能强大,很多Qt或者c/c开发不方便的功能可以由Python编码开发,尤其是一些算法库的应用上,然后Qt调用Python。 2.在Qt调用Python的过程中,必须要安装python环境,并且Qt Creator中编译器与Python的版…

一.概述

1.Python功能强大,很多Qt或者c/c++开发不方便的功能可以由Python编码开发,尤其是一些算法库的应用上,然后Qt调用Python。

2.在Qt调用Python的过程中,必须要安装python环境,并且Qt Creator中编译器与Python的版本要对应,具体来说编译器是64位安装Python就是64位,编译器32位安装Python就是32位。

3.本文测试使用的QT版本为:QT5.12;  python版本为python-3.12

4.Qt调用python主要有两种方式:

一是混合编程模式,直接调用python文件内的函数,比较灵活,也是本文重点讲述的方法;

二是直接调用python脚本文件,比较简单,但是不够灵活。

二.混合编程代码实现

1.环境配置

(1)pro文件中添加python的头文件和依赖库:

INCLUDEPATH += -I D:\python\Lib\site-packages\numpy\core\include

INCLUDEPATH += -I D:\python\include

LIBS += -L D:\python\libs -l_tkinter -lpython3 -lpython312

(2)修改include文件夹中的object.h文件,因为Python中slots是关键字,Qt中slots也是关键字,会冲突。

#undef slots

    PyType_Slot *slots; /* terminated by slot==0. */

#define slots Q_SLOTS  

2.代码实现

(1)Python代码添加目录及内容

添加test1.py文件到qt生成exe目录,比如:

../build-qt_python-Desktop_Qt_5_12_10_MinGW_64_bit-Debug/debug/testb.py

否则无法调用py文件。

Python代码:

def hello():

    print("hello")

def mix(a,b):

    print("=======================")

    r1 = a + b

    r2 = a - b

return (r1, r2)

2.qt代码

#include <QCoreApplication>

#include <Python.h>

#include <QDebug>

#include <numpy/arrayobject.h>

int Test_hello(void)

{

    //初始化python模块

    Py_Initialize();

    if ( !Py_IsInitialized() )

    {

        return -1;

    }

    //导入testb.py模块

    PyObject* pModule = PyImport_ImportModule("testb");

    if (!pModule) {

        qDebug("Cant open python file!\n");

        return -1;

    }

    //获取test模块中的hello函数

    PyObject* pFunhello= PyObject_GetAttrString(pModule,"hello");

    if(!pFunhello){

        qDebug()<<"Get function hello failed";

        return -1;

    }

    //调用hello函数

    PyObject_CallFunction(pFunhello,NULL);

    //结束,释放python

    Py_Finalize();

    return 0;

}

int Testt_mix(void)

{

    //初始化python模块

    Py_Initialize();

    if ( !Py_IsInitialized() )

    {

        return -1;

    }

    PyObject* pModule = PyImport_ImportModule("testb");//注意文件名字大小写

    if (!pModule) {

        qDebug("Cant open python file!\n");

        return -1;

    }

    PyObject* pyFunc_mix = PyObject_GetAttrString(pModule, "mix");

    if (pModule && PyCallable_Check(pyFunc_mix))

    {

        PyObject* pyParams = PyTuple_New(2); //定义两个变量

        PyTuple_SetItem(pyParams, 0, Py_BuildValue("i", 5));// 变量格式转换成python格式

        PyTuple_SetItem(pyParams, 1, Py_BuildValue("i", 2));// 变量格式转换成python格式

        int r1 = 0, r2 = 0;

        PyObject* pyValue = PyObject_CallObject(pyFunc_mix, pyParams); //调用函数返回结果

        PyArg_ParseTuple(pyValue, "i|i", &r1, &r2);//分析返回的元组值

        if (pyValue)

        {

            qDebug("result: %d   %d\n", r1, r2);

        }

    }

    //结束,释放python

    Py_Finalize();

    return 0;

}

int main(int argc, char *argv[])

{

    QCoreApplication a(argc, argv);

    Test_hello();

    Testt_mix();

   return a.exec();

}

3.输出结果

三.直接调用python脚本模式

1.python文件

import sys

def test():

    a = 1

    print (a)

if __name__=='__main__':

   b = test()

   print (b)

2.QT代码

      //第一步:初始化Python

      Py_Initialize();

      //检查初始化是否完成

      if (!Py_IsInitialized())

      {

          return -1;

      }

      //第二步:导入sys模块

      PyRun_SimpleString("import sys");

      const char* code = "with open('./debug/scriptpy.py', 'r') as file: exec(file.read())";

      // 执行代码字符串

      if (PyRun_SimpleString(code) != 0)

      {

          // 处理错误

          PyErr_Print();

          return -1;

      }

      Py_Finalize();

3.执行结果

http://www.zhongyajixie.com/news/11103.html

相关文章:

  • 仿站网站建设淘宝关键词优化怎么弄
  • 寿光网站建设公司网络优化工程师需要学什么
  • 可以申请域名的网站腾讯新闻发布平台
  • 建设部网站核对编号重庆seo排名电话
  • 南京工大建设工程技术有限公司网站营销型企业网站
  • 网站建设 骏域网络建设专家广州网站推广平台搭建
  • 小荷特卖的网站谁做的windows优化大师兑换码
  • 做网站有自己的服务器吗宁夏百度推广代理商
  • 临海做网站自动连点器
  • 国内漂亮的企业网站系统推广公司
  • 做窗帘的效果图网站网络营销方式有哪些分类
  • 香港外贸网站建设2023重大新闻事件10条
  • 给WordPress添加视频播放页seowhy
  • 集团门户网站建设公司如何做百度竞价推广
  • 电脑制作网站的软件深圳推广公司哪家正规
  • 网站推广建设阶段深圳seo优化服务商
  • 做旅游网站选什么空间seo快速排名系统
  • 中央经济工作会议2023年7月召开搜索引擎优化排名品牌
  • 新能源网站建设百度引擎搜索入口
  • 网站建设单位哪家好2023智慧树网络营销答案
  • wordpress 离线编辑知乎seo
  • 做旅游的网站在哪里做推广赚钱平台有哪些
  • 招远做网站公司3天网站seo优化成为超级品牌
  • 怎么自己建网站赚钱小企业广告投放平台
  • 深圳网站开发一薇今日热搜新闻头条
  • 网站开发预留接口百度手机助手下载安卓版
  • 车票在线制作网站广告公司注册
  • 域名续费做网站高端网站建设哪家便宜
  • 网站子站建设自查报告外链代发公司
  • 手机版网站如何做图片滚动企业产品推广运营公司