简明Python3教程 3.介绍
介绍
Python是少有的几种既强大又简单的编程语言。你将惊喜地发现通过使用Python即可轻松专注于解决问题而非和你所用的语言格式与结构。
下面是Python的官方介绍:
Python is an easy to learn, powerful programming language. It has efficient high-level data structures and a simple but effective approach to object-oriented programming. Python’s elegant syntax and dynamic typing, together with its interpreted nature, make it an ideal language for scripting and rapid application development in many areas on most platforms.
我将会在后续章节中介绍这些特性。
- 注
- Python创始人Guido van Rossum以BBC节目”Monty Python’s Flying Circus”命名该语言。他由其不喜欢用身体缠绕并杀死猎物来扑食的蛇。
Python的特性
- 简单
- Python是一种简单、简约的编程语言。阅读优质Python程序将同阅读十分严谨的英语文章一样。Python的伪代码性质是其最大优点之一。这令你可仅关注待解决问题而非语言本身。
- 易于学习
- 正如上文所说,Python的格式非常简单。这令学习Python变得很容易。
- 自由开源
- Python是一种自由及开放源代码软件。简而言之,你可以自由分发此软件的拷贝、阅读、更改、再利用其源代码。自由以及开放源代码软件基于分享知识的社群理念。Python由希望使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、 Acorn RISC OS、 VxWorks、 PlayStation、 Sharp Zaurus、 Windows CE 甚至 PocketPC上运行Python程序。
- 解释型
- 这需要一点解释。
- 由C或C++等编译型语言写成的源代码需要通过编译器附带若干编译选项转换为计算机讲的语言:二进制文件。运行这些二进制文件时,操作系统将它们加载至内存后运行。
- 然而Python程序并不需要编译为二进制文件。你可直接“运行“其源代码。Python将源代码转换成名为字节码的中间形式,然后再将字节码翻译为你的计算机的母语并运行。这些过程令你不再担心编译程序和加载依赖库,使Python更易使用。同样,这也使Python具备更好的可移植性:你可以将你的Python程序复制到其他电脑上并运行。
- 面向对象
- Python不仅支持面向过程编程,还支持面向对象编程。面向过程语言中仅包涵过程、函数等可重复使用的程序片段。面向对象语言中程序由结合数据和函数的对象构成。Python拥有较于庞大的C++或Java简单却强大的面对对象编程方式。
- 扩展性
- 如果你追求关键代码的执行效率或不希望一些算法被看到,你可以将该部分程序以C或C++编写并在Python程序中使用它们。。
- 嵌入性
- 你可将Python嵌入你的C/C++程序,令你的程序具有脚本语言支持能力。
- 扩展库
- Python标准库很大。它可帮助你进行包括正则表达式、生成文档、单元测试、线程处理、数据库、Web浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、加密、GUI、Tk以及其他系统依赖事物。请记住,这些特性在安装Python的地方即可使用。这就是Python的“自带电池”哲学。
- 还有很多根据标准库写成的高质量库,例如wxPython、Twisted、Python Imaging Library等。
Python是一种强大并令人兴奋的语言。它结合了性能与特性并使利用Python编程变得有趣和容易,
为何不用Perl?
如果你不知道的话,Perl是另一种极受欢迎的开源脚本编程语言。
如果你曾经试图用Perl编写大型程序,你可能已经找到了答案。根据我为Yahoo!编写大型Perl程序的经验,小型Perl程序易于编写并能很好地完成任务,单在程序规模扩大后,Perl程序会变得极为笨拙。
相比Perl,Python程序更简单、更清晰易懂、更便于编写,因此也就更具可读性和可维护性。我的确赞赏Perl并将其用于处理日常事物中,但每当我开始编写程序时Python便自然而然浮现在我的脑海中。Perl经过了太多的更改和处理。令人遗憾的是,即将推出的Perl 6并没有考虑对这方面进行改进。
我认为Perl拥有的唯一优势就是其Perl综合档案网,CPAN库。正如其名,CPAN库是一个巨大的Perl模块集合。它的大小和深度令人难以想象 - 你可以使你的电脑依靠这些模块做几乎任何一件事。Perl的历史较Python长是其拥有比Python更多模块的原因之一。但是发展中的Python包目录似乎可以改变这一局面。
为什么不是Ruby?
如果你不知道的话,Ruby是另一种极受欢迎的开源脚本编程语言。
如果你已经爱上了使用Ruby,我建议你继续使用Ruby。
如果你没有用过Ruby或还没决定使用Ruby或Python,从简单易学的观点上我建议你使用Python。我个人认为掌握Ruby语言有些困难。对于掌握Ruby的人来说,他们都在赞美Ruby的美丽,不幸的是,我没有这么幸运地学会Ruby。
程序员们的话
兴许你会对类似ESR的伟大黑客对Python的评价感到兴趣:
- 埃里克·雷蒙是《大教堂和市集》的作者和开放源代码一词的始作俑者。他说Python已经成为了他最喜爱的编程语言。这篇文章鼓舞了我首次接触Python。
- Bruce Eckel是《Thinking in Java》和《Thinking in C++》的作者,他认为Python是仅有的一种旨在为程序员简化工作的编程语言。欲了解详情,请阅读完整采访。
- Peter Norvig是著名的Lisp书籍作者、Google搜索质量主任(感谢Guido van Rossum指出)。他认为Python已经成为了Google不可或缺的一部分。你可以通过浏览Google Jobs确定这个论断:对Python的了解已经成了对Google软件工程师的要求。
关于Python 3.0
Python 3.0是Python语言的新版本,有时还被称为Python 3000或Py3k。
此版本解决了一直以来积累的众多小问题并使Python更加简洁。
如果你拥有众多Python 2.x源码,这里的工具可帮助你将2.x源码转换至3.x源码。
更多详情可阅读:
- Guido van Rossum的介绍
- What’s New in Python 2.6 (与之前Python 2.x版本有极大不同的特性,很可能会包含在Python 3.0中。)
- What’s New in Python 3.0
- Python 2.6 and 3.0 Release Schedule
- Python 3000 (the official authoritative list of proposed changes)
- Miscellaneous Python 3.0 Plans
- Python News (detailed list of changes)
简明Python3教程 3.介绍的更多相关文章
- 简明Python3教程 1.介绍
Python是少有的几种既强大又简单的编程语言.你将惊喜地发现通过使用Python即可轻松专注于解决问题而非和你所用的语言格式与结构. 下面是Python的官方介绍: Python is an eas ...
- 简明Python3教程(A Byte of Python 3)
关键字:[A Byte of Python v1.92(for Python 3.0)] [A Byte of Python3] 简明Python教程 Python教程 简明Python3教程 简明 ...
- 简明Python3教程 6.基础
你肯定不满足于只打印"Hello World"吧? 你想要的更多 - 你希望得到一些输入,操纵它后再从中得到某些东西.我们可以使用python中的常量和变量实现这些功能. 字面常量 ...
- 简明Python3教程 5.第一步
介绍 我们现在来看看如何在Python中运行传统的”Hello world”程序.这会教你如何写.保存以及运行Python程序. 有两种办法来运行您的Python程序——使用交互式的解释器提示符或者源 ...
- 简明Python3教程 18.下一步是什么
如果你有认真通读本书之前的内容并且实践其中包含的大量例程,那么你现在一定可以熟练使用python了. 同时你可能也编写了一些程序用于验证python特性并提高你的python技能.如果还没有这样做的话 ...
- 简明Python3教程 17.更多
简介 迄今为止我们已经学习了python中的大多数常用知识.本章中我们会接触到更多的知识,使得我们更全面的掌握python. 传递元组 你是否希望过从函数返回两个不同的值?做到这点使用元组即可. &g ...
- 简明Python3教程 16.标准库
简介 python标准库作为python标准安装的一部分,其自身包含数量庞大的实用模块, 因此熟悉python标准库非常重要,因为很多问题都能利用python标准库快速解决. 下面我们将研究标准库中的 ...
- 简明Python3教程 12.问题解决
我们已经探究了python语言的方方面面,现在我们将通过设计编写一个有用的程序将这些内容有机的结合起来. 主要目标是让大家有能力独自编写程序. 问题 我们要解决的问题是”希望编写一个程序,用于创建所有 ...
- 简明Python3教程 11.数据结构
简介 数据结构基本上就是 – 可以将一些数据结合到一起的结构,换言之用于存储一组相关的数据. python拥有4种内建数据结构 – 列表,元组(tuple),字典和集合. 我们将看到如何它们,它们又是 ...
随机推荐
- CSDN日报20170406 ——《代码非常烂,所以离职。》
[程序人生]代码非常烂.所以离职? 作者:stormzhang 我在面试的时候一般会问这么一个问题:你为什么离职? 当中有不少同学会提到这么一个原因.现在的项目代码太烂了,前人留下了非常多坑,我实在忍 ...
- 28、从零写UVC驱动之实现设置属性
1. 先看APP以确定需要实现哪些接口xawtv.c: grabber_scan ng_vid_open//根据链表的设置和读取可以在xawtv中找到是调用v4l2_driver.open v4l2_ ...
- [Redis专辑][1]ubuntu12.04下安装php-redis的方法和步骤
首次公布路径:phpredis的安装 非常久非常久没有写博文了,好多博文都没有整理完成,今天才抽时间整理完这一篇博文,希望能对大家有一定的帮助 首先对redis做个简单的介绍: Redis 是全然开源 ...
- ios开发之级联菜单(两个tableView实现)
一:在ios项目实际开发中经常会看到级联菜单的效果:如图:点击左侧菜单,右侧菜单刷新数据.此篇用两个tableView来实现如图效果: 二:代码: 1:构造数据模型:利用kvc快速构建数据模型 #im ...
- bash 提示用户输入 choice
read -p "Continue (y/n)?" choice case "$choice" in y|Y ) echo "yes";; ...
- 在RedHa上安装MRTG监控网卡流量
http://os.51cto.com/art/201103/252149.htm 2011-03-30 15:05 张微波 phpchina 字号:T | T 在RedHa上安装MRTG监控网卡流量 ...
- [React Unit Testing] React unit testing demo
import React from 'react' const Release = React.createClass({ render() { const { title, artist, outO ...
- Android 虚拟机学习总结Dalvik虚拟机介绍
1.Dalvik虚拟机与Java虚拟机的最显著差别是它们分别具有不同的类文件格式以及指令集.Dalvik虚拟机使用的是dex(Dalvik Executable)格式的类文件,而Java虚拟机使用的是 ...
- vs 2013 常用快捷键及常见问题的解决
1. 代码编辑 关闭当前文档:ctrl + F4 打开光标所在位置的文档:ctrl + G(shift + g) 返回上次编辑的位置:ctrl + -(键盘数字键 0 后的那个按键) 移动光标所在的行 ...
- php 获取提交来源,判断从哪里提交的
echo $_SERVER['HTTP_REFERER'];这个获取上个页面的url例如获得的是 $url = http://www.weisuyun.com/nihao.html其他页面提交过来的不 ...