广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python与C之间的相互调用(Python C API及Python ctypes库)
  • 707
分享到

Python与C之间的相互调用(Python C API及Python ctypes库)

2023-06-05 11:06:29 707人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

问题,需要实现全局快捷键,但是是事实上Qt并没有对全局快捷键提供支持,那么用Qt的话就只能通过Win32api来完成了,而我,用的是PyQt,还需要用python来调用win32 API,事实上,都没有什么难的。因为Python如此的流行,

问题,需要实现全局快捷键,但是是事实上Qt并没有对全局快捷键提供支持,那么用Qt的话就只能通过Win32api来完成了,而我,用的是PyQt,还需要用python来调用win32 API,事实上,都没有什么难的。

因为Python如此的流行,导致,开源社区按照自己的爱好,对于Python与C之间互相调用上,各自开发了自己想要的调用方式,其中包括用Python C API来完成,包括ctypes这个Python标准库,还有那一大堆的各式各样的绑定方案如SIP,Boost::Python等,要知道,Python流行到什么程序,Boost库号称c++准标准库,唯一对C++以外的一种语言提供了支持,那就是Python,Python还是Symbian除C++,JAVA外支持的第3种语言,当年在原来的公司,我还一直以为Python是个新鲜的小玩意儿,要我鼓捣Python C API的时候很新鲜,(事实上原公司的确没有用Python的人)到了新公司一看,啊~~~公司只允许使用3中语言,C++,JAVA,还有Python,而大家对Python那都是驾轻就熟,信手拈来,常用来开发一些工具及脚本,呵呵,世界原来与我想象的并不同。
这里将以前工作中用到的Python C API知识,及最近用到的ctypes库的知识梳理一下。

Python C API

此部分可以参考我原来的文章《python c api 使用心得... 》,这里只是会有一些实际的例子,原来那是一个大概流程的描述。
某年某月,在我开始学习Python古老的岁月中(我不是倚老卖老啊)。。。。ctypes还不存在,那时候我们都是老实的用C语言,调用Python C API来完成从Python中调用C语言函数的任务,我学习Python的时候还在想,哈哈哈哈哈,我以前学过C/C++,我可以很熟练的调用 Python C API来完成Python调用Win32 API这样的任务,我多了不起啊:)这个时候的感觉就像,嘿,Python你不是了不起吗。。。。还不是没有办法逃离C语言的魔掌。。。。此时,画面中出现的是K&R嘿嘿嘿嘿的冷笑。。。。Guido van Rossum在他们脚下抱着头哭了。。。。。。。
那时候,情况大概是这样的:

Python与C之间的相互调用(Python C API及Python ctypes库)

--结束END--

本文标题: Python与C之间的相互调用(Python C API及Python ctypes库)

本文链接: https://www.lsjlt.com/news/242631.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作