基于C语言的Python编译

开发 后端
在向大家详细介绍Python编译之前,首先让大家了解下Python编译,然后全面介绍Python编译,还是比较常用的,于是我研究了一下Python编译。

也许大家对于Python编译还不是很了解,看完本文后对您一定会大有帮助,下文除了学习Python编译的基本性质外还对Python编译的新特性进行全面研究,希望大家能够学习研究。

之所以选中 Python(大蟒蛇的意思)作为程序的名字,是因为他是一个Monty Python的飞行马戏团的爱好者。
ABC是由Guido参加设计的一种教学语言。

就Guido本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido 认为是非开放造成的。Guido 决心在 Python 中避免这一错误(的确如此,Python 与其它的语言如C、C++和Java结合的非常好)。同时,他还想实现在 ABC 中闪现过但未曾实现的东西。

就这样,Python在Guido手中诞生了。实际上,***个实现是在Mac机上。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unix shell和C的习惯。Python在编程语言中的定位很多大规模软件开发计划例如 Zope, Mnet 及 BitTorrent. Google都在广泛地使用它。

通常认为,Python是一种解释性的语言,但是这种说法是不正确的,实际上,Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine来执行这些编译好的byte code。

这种机制的基本思想跟Java,.NET是一致的。然而,Python Virtual Machine与Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一种更高级的Virtual Machine。这里的高级并不是通常意义上的高级。

不是说Python的Virtual Machine比Java或.NET的功能更强大,而是说和Java 或.NET相比,Python的Virtual Machine距离真实机器的距离更远。或者可以这么说,Python的Virtual Machine是一种抽象层次更高的Virtual Machine。

基于C的Python编译出的字节码文件,通常是.pyc格式。在实际开发中,python常被昵称为胶水语言,这不是说他会把你的手指粘住,而是说他能够很轻松的把用其他语言制作的各种模块(尤其是C/C++)轻松地联结在一起。#t#

常见的一种应用情形是,使用python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,速度要求非常高,就可以用C++重写。

可扩充性可说是Python作为一种编程语言的特色。新的内置模块(module)可以用C 或 C++写成。而我们也可为现成的模块加上Python的接口。Python可以使用户避免过分的语法的羁绊而将精力主要集中到所要实现的程序任务上。

Python编译也被称为是一门清晰的语言。因为它的作者在设计它的时候,总的指导思想是,对于一个特定的问题,只要有一种***的方法来解决就好了。这在由Tim Peters写的python格言(称为The Zen of Python)里面表述为。有意思的是,这正好和Perl语言(另一种功能类似的高级动态语言)的中心思想TMTOWTDI(There's More Than One Way To Do It)完全相反。

这似乎是人们常把Perl和Python互相比较的重要原因。Python编译是一种清晰的语言的另一个意思是,它的作者有意的设计限制性很强的语法。使得不好的编程习惯(例如if语句的下一行不向右缩进)都不能通过编译。这样有意的强制程序员养成良好的编程习惯。其中很重要的一项就是Python的缩进规则。

责任编辑:chenqingxiang 来源: 计世网
相关推荐

2010-01-18 09:39:25

C++语言

2010-01-14 10:34:02

C++语言

2017-09-01 11:35:37

C++语言编译器

2009-09-28 09:32:01

编译语言C#

2023-11-08 13:17:00

Python解释型语言

2010-03-19 09:39:17

Python编程语言

2010-01-15 17:38:37

C++语言

2010-01-13 14:17:53

C++编译语言

2017-04-17 15:03:16

Python自然语言处理

2010-10-20 13:43:37

C++编译器

2014-05-07 09:48:39

CC语言

2010-03-11 19:16:32

Python语言

2019-05-24 16:20:11

Python 开发编程语言

2009-02-24 08:48:02

D语言C++编译器

2021-12-30 11:26:31

语言编译器脚本

2016-10-09 14:36:39

PythonWeb ServiceInstagram

2019-07-10 13:17:07

大数据搜索代码

2020-12-22 11:54:42

C语言Cortex-A9LED汇编

2010-03-16 14:02:57

Python运行效率

2021-03-15 14:00:56

PythonC语言编程语言
点赞
收藏

51CTO技术栈公众号