内容简介:Python 是一个有条理的和强大的面向对象的程序设计语言,类似于Perl, Ruby, Scheme, 或 Java.它被逐渐广泛应用于系统管理任务的处理和Web编程。Python注重的是如何解决问题而不是编程语言的语法和结构。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 更成熟、语法更具可读性
六、图示
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
算法笔记上机训练实战指南
胡凡、曾磊 / 机械工业出版社 / 2016-7 / 57
《算法笔记上机训练实战指南》是《算法笔记》的配套习题集,内容按照《算法笔记》的章节顺序进行编排,其中整理归类了PAT甲级、乙级共150多道题的详细题解,大部分题解均编有题意、样例解释、思路、注意点、参考代码,且代码中包含了详细的注释。读者可以通过本书对《算法笔记》的知识点进行更深入的学习和理解。书中印有大量二维码,用以实时更新或补充书籍的内容及发布本书的勘误。 《算法笔记上机训练实战指南》可......一起来看看 《算法笔记上机训练实战指南》 这本书的介绍吧!