PS:其实我本人也是学习攻防技术的,只是最近才搞起来了Python这门编程语言,以后的所有文章都会是关于Python的,之前学习Python语言时,总有人会说什么Python容易简单,其实只有真正的程序员才知道刚开始学习编程的苦,不过这种苦有着大家陪伴也算是苦中作乐了,经常有人说Python执行速度比较慢的,我只想说,你肉眼能区分出0.1秒跟0.00001秒的区分吗?
本节内容:
- 2 人们为何使用Python
- 2 Python的广泛领域
- 2 Python的开发效率
- 2 使用Python可以做些什么
- 2 Python与其他语言的对比
人们为何使用Python:
目前有着众多可选的编程语言,这往往是入门面临着的抉择,我本人学习Python也只是看着它比较简单明了才学习的,现在的Python用户保守估计应该也有100万个左右,我也没办法回答这个问题,因为每个语言都有它自己的特性,就像有一个段子叫:“你给我用易语言写一个操作系统出来试试?”
我以我个人选择Python的理由写在下面:
软件质量:
在很大程度上,Python更注重可读性和软件质量与一致性,Python支持软件开发的高级重用机制,例如面向对象编程(OPP,object-orienter programming)
开发效率:
虽然有人说Python的执行速度慢,但是它个人的开发效率是非常高的,相对于C、C++和java这种静态类型的语言,Python的开发效率更胜一筹,有时候,用C语言需要200行完成的项目,Python可能就只需要20行左右。
强大的第三方库:
Python最强大的也就是它自带的库了吧?Python的库可以用作众多领域,而且自带的标准库支持第三方的开发,可谓是使用的游刃有余,不用担心库的缺少,自行开发自己调用。
组件:
Python脚本灵活的机制可轻松的与应用程序的其他部分进行通信,这种集成使Python成为产品定制和扩展的工具,可以与Java组件集成,也可以与COM和.NET等框架进行通信。
简单易学:
这点是毋庸置疑的,由于Python的语法规则非常简洁明了,所以它比起其他编程语言来容易学习,方便我们快速学习并掌握一门编程语言。
Python的广泛领域:
那么问题来了,说了这么多Python,它个人的应用领域究竟覆盖在那些方面呢?
- 2 Youtube-全球最大的视频网站使用Python进行了网站开发
- 2 流行的P2P文件分享系统BitJorrent用Python开发
- 2 EVE Online这款多人网络游戏广泛使用Python
- 2 Maya这款强大的集成化3D建模和动画系统,提供一个PYthon的API
- 2 Intel、Cisco、Hewlett-Packard、Seagate、Qualcomm与IBM使用Python进行硬件开发与测试。
- 2 经济市场方面,JPMorgan Chase、UBS、Getco和Citadel使用Python
- 2 iRobot使用Python开发商业机器人真空吸尘器
- 2 NASA(美国航天局)、Los Alamos、Fermilab、JPL等使用Python实现科学计算
- 2 ESRI在其流行的GIS地图中使用Python作为终端用户的定制工具
- 2 NSA在加密与智能分析中使用Python
- 2 IronPort电子邮件服务器产品超过100万行的Python代码实现作业
- 2 OLPC使用PYthon建立其用户界面和动作模块
Python的开发效率:
Python一直致力于开发速度的最优化:简洁的语法、动态类型、无需编译、内置自带工具包等特性使着程序员能够快速完成项目的开发,Python这门语言唯一的缺点就是:它还不够快;Python对代码的实现方式意是将源代码的语句进行一次编译为字节码的形式,在Python后缀中为(.pyc),之后再将字节码解释,字节码是可移植的,不过,Python已经经过优化多次,并且Python代码在绝大多数应用领域中的运行速度已经足够快了,此外,其实现在Python的执行速度一直是以C语言的执行速度来运行的,如处理某个图形界面(GUI)。
使用Python可以做些什么:
Python的目标不仅仅是设计一个优秀的编程语言,它能够完成现实中所需求的各种任务,包括开发者日复一日做的事情,实际上,Python的应用领域几乎是无限的:你可以在任何场合使用Python进行开发或者学术研究,从网站或游戏开发到机器人和航天飞机的控制。
Python应用领域大致分类:
- 系统编程
- 用户图形接口
- Internet脚本
- 组件集成
- 数据库编程
- 快速原型
- 数值计算与科学计算
- 游戏开发
- 图形图像处理
- 人工智能
- XML开发
- 机器人开发
- Web服务
- 爬虫开发
Python与其他编程语言的对比
- 比Tcl强大,Python支持“大规模编程”。使其适宜于开发大型系统
- 有着比Perl更加简洁的语法和更简单的设计,这使得Python更具有可读性、更易于维护、有助于减少程序Bug。
- 比Java简单,更易于使用,Python是一种脚本语言,Java从C++这样的系统易语言中继承了许多语法和复杂性
- 比C++简单,更易于使用,但通常不会与C++竞争,因为Python作为脚本语言,常常扮演多种不同的角色。
- 比Visual Basic更强大也更具备跨平台特性,由于Python是开源的,也就意味着它不可能被某一家公司所掌控。
- 比PHP更易懂并且用途广泛,Python有时候用来构建Web站点,但是,它也广泛地应用于几乎每个计算机领域,从机器人到电影动画
- 比Ruby更加成熟,语法更具有可读性,与Ruby和Java不同的是,OOP对于Python是可选的:这意味着Python不会强制用户或项目选择OPP开发。
- 具备SmallTalk和Lisp等动态类型的特性,但是对开发者及定制系统的终端用户来说更简单,也更接近传统编程语言的语法。