Python简介

一、什么是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更成熟、语法更具可读性

六、图示

Python简介_第1张图片

你可能感兴趣的:(-----Python基础,【,Python系列】,Python,解释性语言,Web编程,爬虫)