c语言运行python脚本的方法-创新互联

创新互联www.cdcxhl.cn八线动态BGP香港云服务器提供商,新人活动买多久送多久,划算不套路!

站在用户的角度思考问题,与客户深入沟通,找到蓬江网站设计与蓬江网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站制作、网站建设、企业官网、英文网站、手机端网站、网站推广、域名与空间、虚拟主机、企业邮箱。业务覆盖蓬江地区。

这篇文章主要介绍c语言运行python脚本的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

目前的C/C++与python的混合编程分为两大类: 

1、使用python调用c/c++编写的扩展库,扩展python的功能,我们暂且称为python调用c/c++ 

2、使用c/c++程序调用执行python中定义的函数等,我们暂且称为c/c++调用python 

本文只针对c/c++调用执行python作一方面的介绍,如有不正确的地方,还请诸位批评指正。 

目前,主流的用法是把python作为一种文本形式的链接库,在c/c++程序中调用其中定义的函数,这方面的资料很多,本文就不在赘述了,本文重点介绍一种完整调用python脚本文件及参数的方法,闲话少说,上例子: 

以下是测试用的python脚本文件,功能是输出命令行参数:sample.py

# !/usr/bin/env python2.6
import sys
def test():
    for arg in sys.argv:
        print arg

if __name__=='__main__':
    test()

以下是测试用的c++程序文件:test.c++

#include "python2.6/Python.h"
int main()
{
    //第一步:初始化Python
    //在调用Python的提供的给C的API之前,通过执行初始化
    //来添加Python的内建模块、__main__、sys等
    Py_Initialize();

    //检查初始化是否完成
    if (!Py_IsInitialized())
    {
        return -1;
    }

    //第二步:导入sys模块
    PyRun_SimpleString("import sys");

    //第三步:导入执行脚本时的命令行参数,如:./sample.py arg1 arg2
    PyRun_SimpleString("sys.argv['arg1','arg2']");

    //第四步:执行调用脚本文件命令,注意文件的路径
    if (PyRun_SimpleString("execfile('./sample.py')") == NULL)
    {
        return -1;
    }

    //第五步:关闭Python解释器
    Py_Finalize();
    return 0;
}

以上是c语言运行python脚本的方法的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联-成都网站建设公司行业资讯频道!


本文名称:c语言运行python脚本的方法-创新互联
URL网址:http://ybzwz.com/article/dpjies.html