欢迎来到python世界

上传人:子 文档编号:46749204 上传时间:2018-06-27 格式:PDF 页数:15 大小:42.40KB
返回 下载 相关 举报
欢迎来到python世界_第1页
第1页 / 共15页
欢迎来到python世界_第2页
第2页 / 共15页
欢迎来到python世界_第3页
第3页 / 共15页
欢迎来到python世界_第4页
第4页 / 共15页
欢迎来到python世界_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《欢迎来到python世界》由会员分享,可在线阅读,更多相关《欢迎来到python世界(15页珍藏版)》请在金锄头文库上搜索。

1、 本文由k a r r i g e l l e r 贡献d o c 1。第一章 欢迎来到Py t h o n 世界! 世界! 欢迎来到 世界 本章主题 什么是Py t h o n Py t h o n 的起源 Py t h o n 的特点 下载Py t h o n 安装Py t h o n 运行Py t h o n Py t h o n 文档 比较 Py t h o n (与其它语言的比较) 其它实现 本章是介绍性的一章,会提供一些关于 Py t h o n 的背景知识,包括什么是Py t h o n ,Py t h o n 的起源和它的一些关健特性.您的兴趣和热情 一 旦被激发起来后,我们会

2、向您介绍怎样获得 Py t h o n 以及如何把它安装和运行在您的 系统上. 本章最后的练习将会帮助您非常自如地使用 Py t h o n ,包括使用交互性的解释 器以及创建并运 行脚本程序. 1.1 什么是Py t h o n 什么是Py t h o n 是一种优雅而健壮的编程语言,它继承 了传统的编译语言的强大功能和通 用性,同 时也借鉴了简单的脚本和解释型语言的易用 性.它不仅让您完成工作,而且以 后还可以 阅读自己写的代码.您会对自己如此快地学 会它和它强大的功能感到十分的 惊讶,更不 用提您已经完成的工作了,这时您的想象力 会变得非常有限.1.2起源 Gu i d o v a n

3、Ro s s u m 从1989年底开始致力于 Py t h o n 的 开 发 , 然 后 在荷 兰 的 CWI ( Ce n t r u m v o o r Wi s k u n d e e n In f o r m a t i c a ,国家数学和计算机 科学 研究院)继续对Py t h o n 开发.最终在1991年 初,Py t h o n 的第一个公共发行版发布了.Py t h o n 究竟是如何开始的呢?像C,C+,Li s p ,Ja v a 和 Pe r l 一样,Py t h o n 起源于一个研究项 目,这个项 目中的程序员使用当时存在的工具经过艰苦的 努力完成了任务,同

4、时他们 发现并开发出了更 好的解决办法. 那时v a n Ro s s u m 是一位研究人员,而且对解释 型语 言ABC有非常好的语言设计经验,这个语言也 是在CWI开发的,但是他对它被开发成具有 更多 功能的能力不太满意.使用过和部分开发了像 ABC这样的高级语言,回过头来使用 C语言的可 能性一点都不大.他注意到的一些工具都是为了 完成一般的系统管理任务 ,所以他想使用Am o e b a 分布式操作系统的系统调用的能力.尽管v a n Ro s s u m 为Am o e b a 专 用语言提供了一些想法,但是 一种通用的语言更有价值,于是在1989年末, Py t h o n 的种

5、子被播下了. 特点 尽管Py t h o n 已经流行了超过15年,但是一些人 觉得它对于通用软件 开发产业而言依然相对较 新.我们应当谨慎地使用“相对“这个词,因为 当在“网络时代 “开发时,几年看上去就像几十 年. 当人们询问:“什么是Py t h o n ?“的时候,很 难用任何 一个东西来描述它.若倾向于想一口 气 不 加 思 索 地 说 出 您 对 Py t h o n 的 所有 感 觉 , Py t h o n 是,这仅仅是那些特点的某一方面 是什么.为了向您清楚地表达出 来,我们会一1.3次阐明一个特点. 1.3.1 高级 伴随着每一代编程语言的产生,我们会达到另外 一个高度.汇

6、编语言是上帝献给那些挣扎在机器 代码中的人的礼物,后来有了FORTRAN , C和 Pa s c a l 语言,它们将计算带到了另外一个高度,并 且开创了软件开发行业.伴随 着C语言诞生了更多 的像C+,Ja v a 这样的编译语言.我们继续在前 进,于是有了强大的 ,可以与系统打交道的解释 型脚本语言,例如Tc l ,Pe r l 和Py t h o n . 这些语言都有高级的 数据结构,这样就减少了 以前“框架“开发需要的时间.像Py t h o n 中的列 表(大小可变的 数组)和字典(哈希表)内建于 语言本身.在核心语言中提供这些关键的开发模 块,鼓励 使用它们来缩短开发时间与代码量,

7、产 生出可读性更强的代码. 在C语言中,因为没有 标准的不同数组(Py t h o n 中的列表)与哈希表(Py t h o n 中的字典)库,它 们经常被重复实 现,并被复制到每个新的项目中 去,这个过程混乱而且容易产生错误.C+使用 模版库 改进了这种情况,但是标准模版库很难 与Py t h o n 内建的列表和字典的简洁性和易读性进行比较. 1.3.2面向对象面向对象的编程为数据和逻辑是分离的结构 化编程和过程化编程添加了新的特 性.面向对象 的编程支持将具体的行为,特性和能力与它们处 理或代表的数据关联在 一起.Py t h o n 是面向对象 的语言,从它的核心支持这一特性.但是,

8、Py t h o n 不仅仅是像 Ja v a 或Ru b y 这样的面向对性的 语言,事实上它支持多种编程风格.例如,它甚至借鉴了一些像Li s p 和Ha s k e l l 这样的函数语言的 特性. 1.3.3 可升级 Py t h o n 常常被拿来与b a t c h 或Un i x s h e l l 脚本 语言 进 行比 较 .简 单 的s h e l l 脚 本处 理简单 的 任 务,它们可能在长度上增长,但是不会在深度上 增长,只有极小的代码重p a g e 1用性,您可能只局限在 小项目中使用s h e l l 脚本.Py t h o n 却不是这样,您 可以在各个项 目中

9、增加您的代码,添加其他的新 的或者已存在的Py t h o n 元素,也可以重用您脑海 中 的代码.Py t h o n 鼓励简洁的代码设计,高级结 构和多个组件的打包,这些为在范围和规 模上不 断扩张的项目带来了灵活性,一致性和更快的开 发速度. “可升级“这个术语最 经常用于测量硬件的负载,也经常指当为 系统添加了新的硬件时也提升了性能.我们乐 意将这个比较和这里的区 分开来,试图用它来表达一种观念,就是Py t h o n 提供了基本的 开发模 块,您可以在它上面开发您的软件,而且当这些需要扩张和增长时, Py t h o n 的可 插入性和模块化架构使得您的项目具有旺盛的生命力和可管

10、理性. 1.3.4 Ex t e n s i b l e 可扩展As t h e a m o u n t o f Py t h o n c o d e i n c r e a s e s i n y o u r p r o j e c t , y o u w i l l s t i l l b e a b l e t o o r g a n i z e i t l o g i c a l l y b y s e p a r a t i n g y o u r c o d e i n t o m u l t i p l e f i l e s , o r m o d u l e s , a n

11、d b e a b l e t o a c c e s s c o d e f r o m o n e m o d u l e a n d a t t r i b u t e s f r o m a n o t h e r . An d w h a t i s e v e n b e t t e r i s t h a t Py t h o n s s y n t a x f o r a c c e s s i n g m o d u l e s i s t h e s a m e f o r a l l m o d u l e s , w h e t h e r y o u a c c e

12、s s o n e f r o m t h e P y t h o n s t a n d a r d l i b r a r y , o n e y o u c r e a t e d j u s t a m i n u t e a g o , o r e v e n a n e x t e n s i o n y o u w r o t e i n a n o t h e r l a n g u a g e ! Us i n g t h i s f e a t u r e , y o u f e e l l i k e y o uh a v e j u s t “e x t e n d e

13、 d “ t h e l a n g u a g e f o r y o u r o w n n e e d s , a n d y o u a c t u a l l y h a v e . 当大量的Py t h o n 代码在您的项目中增长的时候,您依然能 够从逻辑上组织这些代 码,您可以将代码分成多个文件或者模块,这样就可以从一个模块 访问代码,而从另 一个模块访问属性.更大的好处就是Py t h o n 访问模块和属性的语法对所有的模块来说 是相同的,无论您是 访问Py t h o n 的标准库中的模块,还是访问自己刚刚创建的模 块,甚 至是访问您用其他的编程语言编写的扩展模块,方式都

14、 是一样的.使用这个特性,您会 觉得似乎按照自己的需要扩展 了Py t h o n ,事实上,您确实是这样做了. Th e m o s t c r i t i c a l p o r t i o n s o f c o d e , p e r h a p s t h o s e h o t s p o t s t h a t a l w a y s s h o w u p i n t h e p r o f i l e r o r a r e a s w h e r e p e r f o r m a n c e i s a b s o l u t e l y r e q u i r e d

15、, a r e c a n d i d a t e s f o r b e i n g r e w r i t t e n a s a Py t h o n e x t e n s i o n w r i t t e n i n C. Bu t a g a i n , t h e i n t e r f a c e i s e x a c t l y t h e s a m e a s f o r p u r e Py t h o n m o d u l e s . Ac c e s s t o c o d e a n d o b j e c t s o c c u r s i n e x a c t l y t h e s a m e w a y w i t h o u t a n y c o d e m o d i f i c a t i o n w h a t s o e v e r . Th e o n l y t h i n g d i f f e r e n t a b o u t t h e c o d e n o w i s t h a t y o u s h o u l d n o t i c e a n i m p r o v e m e n t i n p e r f o r m a n c e . Na t u r a l l y , i t a l l

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号