python语言介绍目录/CONCENTSPython概述Python基本语法0102Python数据结构03Python字符串04Python简单程序编写051.Python概述计算机语言发展过程Python语言由来•Python的创始人为荷兰人GuidovanRossum。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC语言的一种继承。之所以选Python(大蟒蛇的意思)作为程序的名字,是因为他是一个MontyPython的飞行马戏团的爱好者。•ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido认为是非开放造成的。Guido决心在Python中避免这一错误(的确如此,Python与其它的语言如C、C++和Java结合的非常好)。同时,他还想实现在ABC中闪现过但未曾实现的东西。就这样,Python在Guido手中诞生了。Python语言由来•可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unixshell和C的习惯。实际上,Python的第一个版本实现是在Mac机上。(转自互联网)•Python语言已诞生20多年了,正逐渐发展为主流程序设计语言之一,目前在TIOBE编程语言排行榜中长期占据第七、八的位次,近期又有上升。•目前,Python由世界各地的数十位程序员(包括vanRossum)负责维护。•Python的官方定义为:Python是一种解释型的、面向对象的、带有动态语义的高级程序设计语言。TIOBE2015年8月编程语言排行榜TOP20榜单Top10语言的30十年变化有人说:•编写C程序就像一群人拿着剃刀在刚打过蜡的舞场内跳快舞。——WaldiRavens•C++:难学更难用,设计如此。——匿名•在很多方面,Java就是C++。——MichaelFeldmanpython语言特点•程序设计语言在不断发展,从最初的机器语言、汇编语言到后来的C、Pascal语言,发展到现在的C++、Java等高级编程语言。程序设计的难度在不断减小,软件的开发和设计已经形成了一套标准,开发工作已经不再是复杂的任务。最初只能使用机器代码编写程序,而现在可以使用具有良好调试功能的IDE环境编程。•Python使用C语言开发,但Python不再有C语言中的指针等复杂数据类型。Python的简洁性使得软件的代码大幅度减少,开发任务进一步简化。程序员关注的重点不再是语法特性,而是程序所要实现的任务。•Python语言有许多重要的特性,而且有些特性是富有创造性的。Python语言特点-面向对象•面向对象的程序设计解决了结构化程序设计的复杂性,使得程序设计更贴近现实生活。•结构化程序设计把数据和逻辑混在一起,不便于程序的维护。面向对象的程序设计抽象出对象的行为和属性,把行为和属性分离开,但又合理地组织在一起。•Python语言具有很强的面向对象特性,而且简化了面向对象的实现,它消除了保护类型、抽象类、接口等面向对象的元素,使得面向对象的概念更容易理解。Python语言特点-内置数据结构•Python提供了一些内置的数据结构,这些数据结构实现了类似Java中集合类的功能。内置数据结构的出现简化了程序设计。•Python的数据结构包括元组、列表、字典、集合等。•元组相当于“只读”的数组,列表可以作为可变长度的数组使用,字典相当于Java中的HashTable类型。Python语言特点-简单性•Python语言的关键字比较少,它没有分号、begin、end等标记,代码块使用空格或制表键缩进的方式来分隔。•Python的代码简洁、短小、易于阅读。•Python简化了循环语句,即使程序结构很复杂也能快速读懂。Python语言特点-健壮性•Python提供了异常处理机制,能捕获程序的异常情况。此外Python的堆栈跟踪对象能够指出程序出错的位置和出错的原因。•异常机制能够避免不安全退出的情况,同时能够帮助程序员调试程序。Python语言特点-跨平台•Python会先被编译为与平台相关的二进制代码,然后再解释执行。这种方式类似于Java,但Python的执行速度提高了。•Python编写的应用程序可以运行在Windows、Unix、Linux等不同的操作系统上。在一种操作系统上编写的Python代码只需做少量修改,就可移植到其他的操作系统上。Python语言特点-可扩展、动态性可扩展性•Python是采用C开发的语言,因此可以使用C扩展Python,可以给Python添加新的模块、新的类。同时Python可以嵌入C、C++语言开发项目中,使程序具备脚本语言的特性。动态性•Python与JavaScript、PHP、Perl等语言类似,它不需要另外声明变量、直接赋值即可创建一个新的变量。Python语言特点-强类型、应用广泛强类型语言•Python的变量创建后会对应一种类型,它可根据赋值表达式的内容决定变量的类型。Python在内部建立了管理这些变量的机制,不同类型的变量需要类型转换。应用广泛•Python语言应用于数据库、网络、图形图像、数学计算、Web开发、操作系统扩展等领域。有许多第三方库支持Python。Python下载1、访问Python下载页面比较Python2和Python3•Python3发布于2008年底,是一次重大的升级。•Python3的有些改进不向后与Python2兼容,因此Python2始终与Python3并行地向前发展。•全面了解Python3和Python2之间的差异,可参阅What’sNewinPython3.0()。•工具2to3()几乎能将任何Python2程序自动转换为等价的Python3程序。2.Python基本语法Python的编码规范1、命名规则•Python语言有一套自己的命名规则。命名规则并不是语法规定,只是一种习惯用法。(1)变量名、模块名、包名•通常采用小写,可使用下划线。•例如:rulemodule.py#模块名,即文件名_rule=’ruleinformation’#_rule变量名,通常前缀有一个下划线的变量名为全局变量Python的编码规范(2)类名、对象名•类首字母采用大写;•类中的方法名首字母小写,其后的每个单词的首字母大写;•对象名(类的实例)采用小写;•类外引用其属性和方法名时,以对象名作为前缀。•类的私有变量、私有方法以两个下划线作为前缀。Python的编码规范(3)函数名函数名通常采用小写,并用下划线或单词首字母大写增加名称的可读性。导入的函数以模块名作前缀。下例中,为演示导入函数前缀写法,使用了生成随机数的模块random。该模块有一个函数randrange(),该函数可以根据给定的数字范围生成随机数。其声明为:randrange(start,stop[,step])说明:–参数start表示生成随机数所在范围的开始数字。–参数stop表示生成随机数所在范围的结束数字,但不包括数字stop。–参数step表示步长。生成的随机数在[start,stop-1]的范围内,取值等于start+step。Python的编码规范比较两个数的大小,数据由随机函数生成。随机数的范围在1—8之间选取。Python的编码规范2、代码缩进与冒号•对于C、C++、Java等语言,代码缩进只是作为编程的一种良好习惯。•对于Python而言,代码缩进是一种语法。Python语言中没有采用花括号或begin…end分隔代码块,而是使用冒号和代码缩进区分代码之间的层次。Python的编码规范比较两个程序段并查看运行结果执行结果:执行结果:Python的编码规范3、模块导入的规范•模块是类或函数的集合,用于处理一类问题,使用任何Python模块都必须先导入。模块的导入使用import语句或from…import…语句。(1)import语句•例如:导入数学函数模块math,调用其中的函数。Python的编码规范(2)from…import…语句•使用第二种导入方式,在调用math模块中的任何函数时,都无需在前面加上“math.”。•使用第二种导入方式时,如果程序中的函数与math模块中的某个函数同名,将被math模块中的同名函数覆盖。第一种导入方式不会覆盖任何既有函数,但使用起来不如第二种方式简洁。•还可以导入模块math的特定函数。例如:frommathimportsqrt,tan只导入函数sqrt和tan。Python变量变量是计算机内存中的一块区域,变量可以存储任何值(也称指向),而且值可以改变。例如:Python变量1、变量命名规则变量名的长度不受限制,其中的字符必须是字母、数字或下划线(_),不能使用空格、连字符、标点符号、引号或其他字符变量名的第一个字符不能是数字,必须是字母或下划线。Python区分大小写,因此TAX、Tax和tax是截然不同的变量名。不能将Python关键字(或称为保留词)用作变量名。例如:if、else、while、def、or、and、not、in和is都是Python关键字。andasassertbreakclasscontinuedefdelelifelseexceptexecFalsefinallyforfromglobalifimportinislambdanotNoneorpassprintraisereturntryTruewhilewithyieldPython变量2、赋值语句•格式:var=value•左值右值•赋值运算符•功能:定义新的变量;让已定义的变量指向特定值。Python变量3、多重赋值Python中,有一种便利的方法,能够同时给多个变量赋值。Python运算符与表达式Python的运算符包括算术运算符、关系运算符和逻辑运算符。表达式是由数字或字符串和运算符组成的有意义的式子。1、算术运算符和算术表达式(1)整数运算名称运算符示例加+3+47减—5-32乘*2*36除/3/21.5整除//3//21求余%25%31乘方**3**327Python运算符与表达式①运算顺序•Python算术运算的规则与常规算术的规则相同。②长度不受限制•与其他大多数编程语言不同,Python对整数的长度没有限制,可以执行数十位甚至数百数千位的整数运算。•如:27**100Python运算符与表达式(2)浮点数运算在Python中,浮点数是带小数点的数字。例如:-3.1、2.999和-4.0都是浮点数。所有适合用于整数的算术运算符都可用于浮点数,包括%(求余)和//(整除)Python运算符与表达式2、关系运算符和关系表达式关系运算符关系表达式描述优先级xy小于优先级相等;但优先级大于==和!=xy大于=x=y小于等于=x=y大于等于==x==y等于优先级相等!=x!=y不等于Python运算符与表达式例如:相当于:3=31Python运算符与表达式3、逻辑运算符和逻辑表达式逻辑运算符逻辑表达式描述优先级andxandy逻辑与,当x为True时,才计算y优先级相等orxory逻辑或,当x为False时,才计算ynotnotx逻辑非优先级大于and和orpqpandqporqnotpFalseFalseFalseFalseTrueFalseTrueFalseTrueTrueTrueFalseFalseTrueFalseTrueTrueTrueTrueFalse基本逻辑运算符的真值表Python运算符与表达式4、三类运算符