python html5 bootstrap 视频教程

德云社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

数字 IDE Python ── 支持 \"极速编写-重构\" Python、Django、HTML5、XML、C/C++、Java、Perl、PHP、Ruby、C#、VB .Net 等程序源代码。。。集成了很多常用编程智能辅助工具。。。
数字 IDE 网页 ── \"所见即所得\" 编写 HTML4、HTML5 静态 \"网站站群\" 动态网站,生成 Robots、站点地图,死链检测,强大文本编辑器功能。。。集成中英自动 TTS 文本诵读功能。。。
数字浏览器专业版 ── 集成了工业 4.0 理念的数字化浏览器,譬如:集成中英自动 TTS 文本诵读功能。。。全文搜索、数据整理分析工具。。。可浏览文件夹、文件、图片、音频、视频等文件格式。。。所见即所得编写 HTML4、HTML5 网站及强大文本编辑器功能。。。
数字翻译 ── 能 \"批量翻译\" 文档 GUI 用户界面。。。网页浏览 批处理 全文搜索 全文替换 全文删除 全文插入 数据比较 。。。集成中英自动 TTS 文本诵读功能。。。
查看: 212|回复: 0

Python 的 .py 与 Cython 的 .pxd .pyx .pyd 文件格式之间的主要区别

[复制链接]

113

主题

115

帖子

740

积分

高级技师

Rank: 4

金钱
470
金币
16
威望
0
贡献
0
发表于 2018-4-15 12:00:00 | 显示全部楼层 |阅读模式
|          
Python 的 .py 与 Cython 的 .pxd .pyx .pyd 文件格式之间的主要区别

.py 文件

Python 最常用格式就是 .py (另一较常用格式为 .pyw),由 python.exe 解释,可在控制台下运行。


当然,也可用文本编辑器或其它专用 Python IDE (集成开发环境) 工具进行修改。


常见情形是,用 Python 快速生成程序原型 (有时甚至是程序最终界面),然后对其中有特别要求的部分,用更合适的语言改写;譬如:3D 游戏中的图形渲染模块,性能要求特别高,就可用 C/C++ 重写,而后封装为 Python 可调用的扩展类库。需要注意的是,在您使用扩展类库时可能需要考虑平台问题,某些扩展类库可能不提供跨平台实现。


此外,还可采用 Cython 为 Python 编写 C 扩展。Cython 是编写、包裹外部 C/C++ 库的胶水代码,将 CPython 嵌入现有应用程序、加速 Python 代码执行的理想 C 模块语言。


百度网盘

https://pan.baidu.com/s/1cKxajG


快速高效 智能编辑 重构 批处理 "数字化 Python IDE" 集成开发环境

http://dts.digitser.cn/zh-CN/ide/idepy/index.html

http://forum.digitser.cn/thread-2177-1-1.html


.pxd 文件

.pxd 文件是由 Cython 编程语言 "编写" 而成的 Python 扩展模块头文件。


.pxd 文件类似于 C 语言的 .h 头文件,.pxd 文件中有 Cython 模块要包含的 Cython 声明 (或代码段)。


.pxd 文件可共享外部 C 语言声明,也能包含 C 编译器内联函数。.pxd 文件还可为 .pyx 文件模块提供 Cython 接口,以便其它 Cython 模块可使用比 Python 更高效的协议与之进行通信。


可用 cimport 关键字将 .pxd 文件导入 .pyx 模块文件中。


.pyx 文件

.pyx 文件是由 Cython 编程语言 "编写" 而成的 Python 扩展模块源代码文件。


.pyx 文件类似于 C 语言的 .c 源代码文件,.pyx 文件中有 Cython 模块的源代码。


不像 Python 语言可直接解释使用的 .py 文件,.pyx 文件必须先被编译成 .c 文件,再编译成 .pyd (Windows 平台) 或 .so (Linux 平台) 文件,才可作为模块 import 导入使用。


.pyd 文件

.pyd 文件是非 Python,由其它编程语言 "编写-编译" 生成的 Python 扩展模块。


Python 要导入 .pyd 文件,实际上是在 .pyd 文件中封装了一个 module。在 python 中使用时,把它当成 module 来用就可以了,即:"import 路径名.modulename" 即可,路径名为 .pyd 文件所在的路径。


基于 Qt/C++ 的 PyQt、PySide GUI (图形用户界面) 开发框架绑定,会为每个 Qt/C++ 库 .dll 文件生成一个中间 .pyd 文件。PyWin32 项目分发包中,也存在很多 MicroSoft Windows OS 相应 .dll 文件的中间 .pyd 文件。


Cython 可将个人基于 Python 语言编写的 Python 模块编译成具有 C 语言特性的 .pyd 文件。


.pyd 文件有时也是用 D 语言按照一定格式编写,编译生成的二进制文件。


那么什么是 "D 语言" 呢?它是 C/C++ 的综合进化版,不仅具有二者的全部优点,且整体性能更佳,但其抽象程度高。D 语言最初由 Digital Mars 公司就职的 Walter Bright 于 2001 年发布,意图改进 C++ 语言。目前最新 D 语言被简称为 D2。最主要的 D 语言实现是 DMD。


D 语言源自 C/C++,借鉴了众多编程语言的特色和现代编译器技术,融会贯通了设计者丰富的实践经验,使之具备了非凡的威力 ── 既有 C/C++ 语言的强大威力,又有 Python 和 Ruby 的开发效率。它集众多系统级编程所需的功能于一身,例如垃圾回收、手工内存操作、契约式设计、高级模板技术、内嵌汇编、内置单元测试、Mixin 风格多继承、类 Java 包管理机制、内置同步机制、内建基本运行时信息。


"长按二维码" 或 "扫一扫" 关注 "德云社区" 微信公众号

版权声明:
本文为独家原创稿件,版权归 德云社区,未经许可不得转载;否则,将追究其法律责任。


AI人工智能 语音助理 人工翻译 教程
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|Sitemap|手机版|小黑屋|  |网站地图  

GMT+8, 2018-4-25 14:40 , Processed in 0.054130 second(s), 17 queries , Apc On.

版权所有 © 2014-2018 德云社区

工业和信息化部:粤ICP备14079481号-2

快速回复 返回顶部 返回列表