Python简介

2018-11-07 11:18:52 浏览数 (1)

版权声明:本文为博主原创文章,欢迎扩散,扩散请务必注明出处。

一、什么是Python

  Python 是一个有条理的和强大的面向对象的程序设计语言,类似于Perl, Ruby, Scheme, 或 Java.它被逐渐广泛应用于系统管理任务的处理和Web编程。   Python注重的是如何解决问题而不是编程语言的语法和结构。 Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程。 Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使得它在大多数平台上的许多领域都是一个理想的脚本语言,特别适用于快速的应用程序开发。

二、Python设计思想

  Python设计者开发时总的指导思想是:简单即是美!对于一个特定的问题,只要有一种最好的方法来解决就好了。

三、Python特色

简单易学   Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。Python语法简单,极其容易上手

免费、开源   Python是FLOSS(自由/开放源码软件)之一。简单地说,可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。这是为什么Python如此优秀的原因之一——它是由一群希望看到一个更加优秀的Python的人创造并经常改进着的。

可移植性   基于Python开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括:Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、 BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC!

解释性   Python是一种解释型语言。这就是说,与C语言和C的衍生语言不同,Python代码在运行之前不需要编译。其他解释型语言还包括PHP和Ruby。

面向对象 Python非常适合面向对象的编程(OOP),因为它支持通过组合(composition)与继承(inheritance)的方式定义类(class)。Python中没有访问说明符(access specifier,类似C 中的public和private),这么设计的依据是“大家都是成年人了”。

可扩展   如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C 编写,然后在你的Python程序中使用它们。

可嵌入性   可以把Python嵌入你的C/C 程序,从而向你的程序用户提供脚本功能

强大的标准库 Python标准库,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、 FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作,强大到你想不到

四、Python能做什么

  • 系统编程 Python对操作系统服务的内置接口,使其成为编写可移植的维护操作系统的管理工具和部件的理想工具。Python程序可以搜索文件和目录树,可以运行其他程序,用进程或线程进行并行处理等。 Python的标准库绑定了POSIX以及其他常规操作系统工具:环境变量、文件、套接字、管道、进程、多线程、正则表达式、命令行参数、标准流接口、Shell命令启动器、文件名扩展等。
  • 用户图形接口 Python的简洁以及快速的开发周期十分适合开发GUI程序 内置了Tk GUIAPI,可以生成可移植的本地观感的GUI,可以不做任何改变就可以运行在Windows、Xwindows、MacOS等平台 wxPython GUI API PythonCard、Dabo等构建在wxPython 和Tkinter基础上的高级工具包 通过适当的库,可以使用其他GUI工具包
  • Internet通信 Python提供了标准Internet模块,可以广泛应用到各种网络任务中,无论服务端还是在客户端
  • 套接字 XML-RPC、SOAP、Telnet等通信 Twisted 网站编程第三方工具:HTMLGen、mod_python、Django、TurboGears、Zop,使Python能够快速构建功能完善和高质量的网站
  • 组件集成 Python可以通过c/c 进行扩展,并能够嵌套c/c 系统的特性,使其能够作为一种灵活的粘合语言,脚本化处理其他系统和组件的行为 调用其他现有组件,如COM、基于Java实现的Jython、基于.NET实现的IronPython、各种Corba工具包等
  • 数据库编程 支持所有主流数据库:Oracle、Sybase、MySQL、PostgreSQL、Informix、SQLite 定义了标准的、可移植的数据库API Pickle 面向对象数据库系统:ZODB 从关系数据库映射到Python类(ORM): SQLAlchemy 、SQLObject
  • 快速原型 对Python程序来说,Python和C编写的模块看起来是一样的,因此,可以在一开始利用Python做系统原型、之后再将组件移植到C/C 移植时Python代码不需要重写,系统中不需要变成C/C 的部分可以保持不变,从而使维护和使用变得轻松起来
  • 数值计算和科学计算 NumPy
  • 游戏、图像、人工智能、机器人等 Pygame/Bigworld PIL PyRO(机器人控制) 神经网络仿真器 NLTK(自然语言分析)

五、与其他语言对比

比TCL强大,支持“大规模编程”,适宜于开发大型系统 比Perl语法简洁,更具可读性、更易于维护,有助于减少Bug 比Java更简单、更易于使用 比C 更简单、更易于使用,不与之竞争 比VB更强大也更具备跨平台特性 比Ruby更成熟、语法更具可读性

六、图示

0 人点赞