c/c++ 调用python程序实例(QT)

参考:Qtcreator中C++调用python方法 :   https://blog.csdn.net/alxe_made/article/details/83382159/

C++调用Python浅析:

https://blog.csdn.net/magictong/article/details/8947892?spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-5.nonecase&depth_1-utm_source=distribute.pc_relevant_bbs_down.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-5.nonecase

 

test.c

#include <stdio.h>

#include<Python.h>

int main()

{

printf("Hello World!\n");

//for python call

Py_Initialize();

if(!Py_IsInitialized()){

return -1;

}

PyObject* pyModule = PyImport_ImportModule("test_py");

if(pyModule == NULL) {

printf("Can't open python file!\n");

return -1;

}

PyObject* pyFunhello = PyObject_GetAttrString(pyModule, "hello");

if(pyFunhello == NULL) {

printf("Get function hello failed\n");

return -1;

}

PyObject_CallFunction(pyFunhello, NULL);

Py_Finalize();

return 0;

}

test_py.py

#!/usr/bin/env python

#_*_ coding: utf-8 _*_

def hello():

print("hello world form python\n")


qt 工程文件:

TEMPLATE = app

CONFIG += console

CONFIG -= app_bundle

CONFIG -= qt

INCLUDEPATH +=C:\Users\y00430891\AppData\Local\Programs\Python\Python39\include\

LIBS += -LC:\Users\y00430891\AppData\Local\Programs\Python\Python39\libs\

-l_tkinter\

-lpython3\

-lpython39

SOURCES += \

test.c 

DISTFILES += \

test_py.py


posted @ 2021-10-07 23:37  平安1111  阅读(221)  评论(0)    收藏  举报