鱼C论坛

 找回密码
 立即注册
查看: 4233|回复: 11

[技术交流] Python的介绍

[复制链接]
发表于 2013-8-9 11:55:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
                                Python介绍
Python的历史
  Python的创始人为Guido van Rossum。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC语言的一种继承。之所以选中Python(大蟒蛇的意思)作为程序的名字,是因为他是一个Monty 大蟒蛇飞行马戏团的爱好者。

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

  就这样,Python在Guido手中诞生了(真要感谢他)。实际上,第一个实现是在Mac机上。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unix Shell和C的习惯。

Python的特点
  Python是一种脚本语言,它的语法表达优美易读。它具有很多优秀的脚本语言的特点:解释的,面向对象的,内建的高级数据结构,支持模块和包,支持多种平台,可扩展。而且它还支持交互式方式运行,图形方式运行。它的语法有很多与众不同的特性。下面我分别说明一下:

运行方式
Python可以以命令行方式运行,也可以交互式方式运行,还具有图形集成环境,这样开发Python就相当方便。现在已经出现了许多用Python编写的可视化编程软件,用于实现象Delphi一样的功能。
面向对象
Python是一个真正的面向对象语言。它甚至支持异常的处理。如果学过Java,应该对这个不陌生。但其它的脚本语言,如PHP,好象就没有。这使得程序的编写更加清晰,而不需要许多的错误检查了。
模块和包
这一点更象是Java。对于Java的支持,大家可以了解JPython。JPython是用Java写的Python,它完全支持Java,在这个环境下使用Python可以随意地使用Java的类库。
语言扩展
可以用C、C++或Java为Python编写新的新言模块,如函数。或者与Python直接编译在一起,或者采用动态库装入方式实现。也专门有人编写了一个工具,可以实现为Python自动实现函数接口封装,这就是SWIG(Simplified Wrapper and Interface Generator),或称做简单封装和接口生成器(可以在 http://www.cs.utah.edu/~beazley/SWIG自由获得)。
有趣的语法
Guido认为Python的语法是非常优美的。其中一点就是,块语句的表示不是C语言常用的{}对,或其它符号对,而是采用缩近表示法!有趣吧。就这一点来说,Guido的解释是:首先,使用缩近表示法减少了视觉上的混乱,并且使程序变短,这样就减少了需要对基本代码单元注意的范围;其次,它减少了程序员的自由度,更有利于统一风格,使得阅读别人的程序更容易。感觉还是不错的,就C语言来说,在if语句后面大括号的写法就好几种,不同的人喜欢不同的样子,还不如统一起来,都不会看得别扭。

在每个类或函数的定义后面,第一行可以是说明语句,根本不需要注释符标记。对于后面跟块语句的语句,后面应跟上一个冒号(:)。一行语句不能太长,因为没有行结束符,如果超长则要使用续行符(\)。还有一些有趣的比如说,象下面的一个比较处理,用C语言为:

if (2<a && a<5)

用Python可以表示为

if (2<a<5) :

当然不一定会有什么好处,但是它所宣称的优美的语言毕竟不是虚的。其它的大家可以通过学习自行了解。
Python可以做什么?
  那么Python可以做什么呢?我感觉,什么都可以。如果在Windows下,如果想做一个图形界面程序,那么Python可以胜任。可以去wxPython.org看一下,它是一个Python的扩展库,可以用来实现跨平台的图形编程,它支持windows和unix/linux。在那个网站上有一些演示,可以学习一下。Python可以做CGI。有些主页提供了对Python的CGI支持。现在还有一些用Python做的游戏。如果想了解更多的Python可以做什么,可以去SourceForge上查找有关Python的项目,上面有很多东西。

结束
  在中国Python还处于起步,学习研究它的人很少,希望感兴趣的同志加入这一行列。



想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-8-9 12:33:38 | 显示全部楼层
  看来这是个不错的选择啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2013-8-9 14:11:26 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-9 14:42:41 | 显示全部楼层
还不错!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-9 19:10:32 | 显示全部楼层
本帖最后由 Seandor 于 2013-8-16 15:18 编辑

给力!                  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-9 20:44:31 | 显示全部楼层
好东西 好好学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-9 21:09:32 | 显示全部楼层
Python明显是个好东西啊。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-16 14:10:24 | 显示全部楼层
之前听过一朋友跟我说Python和perl都是很好的,哎,之前听都没听说过
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-6-8 10:48:34 | 显示全部楼层
已经下手,争取半年精通之……
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-6-13 17:08:18 | 显示全部楼层
没有编程基础,是因为python简单才决定学习的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-10 17:11:01 | 显示全部楼层
Python是个好东西
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-21 12:17:14 | 显示全部楼层
谢谢分享看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-26 15:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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