如何实现 CC++ 与 Python 的通信

如何实现 CC++ 与 Python 的通信,第1张

简单的办法是通过文件两个程序各做各的,通过文件来通讯。这个相当推荐。特别是新手,绝对好用。

或者是通过管道(在某些 *** 作系统下不稳定)。

复杂一些的,分布式通用对象接口。这个基本上被大家放弃了。然后是XML+webservice,这个方案因为复杂度高,慢慢也不用了。目前流行的方式是restful + json。 protocolbuf还有thrift方法,这里也不详述,有一整套的方法。

还有更直接的方法,共享内存与嵌入。或者是python嵌入C++或者是反过来。在python里调 用C++。有专门的接口,参考python的帮助。

有一个直接又轻松的办法,使用cython,直接写C++模块,然后用python调用。传递参数也有很多种方法。这里不一一描述。

另外在c++里嵌入python还有一些偏门的方法。比如有人封装过VCL组件,直接通过组件就可以调 用。

如果要在testpy中调用脚本funcpy脚本

首先,两个脚本文件要放在pythonpath下,其次在testpy脚本的开头写上import func,这样就可以直接调用func中的函数方法了。

1 安装IronPython

到>

安装下载下来的安装包(要先装VS啊)。

2 创建项目

创建一个C#的控制台应用程序。

添加引用: 浏览到IronPython的安装目录中,添加对IronPythondll,MicrosoftScriptingdll 两个dll的引用。

3 添加Python文件到当前的项目中

创建一个文本文件命名为:hellopy, 编辑如下

def welcome(name):

return "hello" + name

把该文件添加的当前的项目中。

4 在C#中调用Python方法

首先添加两个引用:它们定义了Python和ScriptRuntime两个类型。

第一句代码创建了一个Python的运行环境,第二句则使用net40的语法创建了一个动态的对象, OK,下面就可以用这个dynamic类型的对象去调用刚才在定义的welcome方法了。

注意:在运行前一定要把hellopy文件设为:Copy always

否则运行时会报找不到hellopy文件,enjoy it!

以上就是关于如何实现 C/C++ 与 Python 的通信全部的内容,包括:如何实现 C/C++ 与 Python 的通信、C调用Python一个运行时间长的函数,如何实时、C# 如何调用Python文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/zz/9460395.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存