《Python编程基础》课件-第1章 Python语言基础_第1页
《Python编程基础》课件-第1章 Python语言基础_第2页
《Python编程基础》课件-第1章 Python语言基础_第3页
《Python编程基础》课件-第1章 Python语言基础_第4页
《Python编程基础》课件-第1章 Python语言基础_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Python3基础教程第2版慕课版第1章Python语言基础本章主要内容:Python概述Python程序运行方式Python开发环境1.1Python概述本节主要内容Python的发展Python的特点Python的版本1.1.1Python的发展吉多·范罗苏姆(GuidovanRossum)于1989年开始开发Python作为巨蟒剧团(MontyPython)喜剧团体的粉丝,吉多将这门新的语言命名为Python。Python的灵感来自ABC语言——吉多参与开发的一种适用于非专业程序开发人员的教学语言。吉多认为ABC语言优美、功能强大,ABC未获得成功的原因主要是非开放。吉多一开始就将Python定位为开放性语言。Python起源于ABC,并受到了Modula-3语言的影响,同时结合了Unixshell和C的习惯。TIOBE程序设计语言排行榜1.1.2Python的特点1.Python是免费的开源自由软件Python遵循GPL协议,是免费和开源的,不管用于何种用途,开发人员都无需支付任何费用,也不用担心版权问题。2.Python是面向对象的面向对象(ObjectOriented,OO)是现代高级程序设计语言的一个重要特征。Python具有多态、运算符重载、继承和多重继承等面向对象编程(ObjectOrientedProgramming,OOP)的主要特征。1.1.2Python的特点3.Python具有良好的跨平台特性Python是用ANSIC语言实现。C语言因为跨平台和良好的可移植性成为了经典的程序设计语言。这意味着Python也具有良好的跨平台特性,可在目前所有的主流平台上编译和运行。1.1.2Python的特点4.Python功能强大动态数据类型:Python在代码运行过程中跟踪变量的数据类型,不需要声明变量的数据类型,也不要求在使用之前对变量进行类型声明。自动内存管理:良好的内存管理机制意味着程序运行具有更高的性能。Python程序员无需关心内存的使用和管理,Python会自动分配和回收内存。大型程序支持:通过子模块、类和异常等工具,Python可用于大型程序开发。内置数据结构:Python提供了常用数据结构支持。例如,集合、列表、字典、字符串等都属于Python内置类型,用于实现相应的数据结构。同时,Python也实现了各种数据结构的标准操作,如合并、分片、排序和映射等。内置标准库:Python提供丰富的标准库,如从正则表达式匹配到网络等,使Python可以实现多种应用。第三方工具集成:Python通过扩展包集成第三方工具,从而应用到各种不同领域。1.1.2Python的特点5.Python简单易学Python的设计理念是“优雅”“明确”“简单”,提倡“用一种方法,最好是只用一种方法来做一件事”。所以,Python语言语法简洁、代码易读。一些知名大学(如卡耐基梅隆大学、麻省理工学院等)开始采用Python作为程序设计课程的编程语言。执行importthis命令显示Python哲学和设计思想Python之禅(译文)优美胜于丑陋明了胜于晦涩简单胜于复杂复杂胜于杂乱扁平胜于嵌套间隔胜于紧凑可读性很重要特例不足以特殊到违背这些原则不要忽视错误,除非程序需要这样做面对模棱两可,拒绝猜测解决问题最直接的方法应该有一种,最好只有一种可能这种方法一开始不够直接,因为你不是范罗苏姆做也许好过不做,但不想就做还不如不做如果方案难以描述明白,那么一定是个糟糕的方案如果容易描述,那么可能是个好方案命名空间是一种绝妙的理念,多加利用1.1.3Python的版本版本号年份0.9.0~1.21991~19951.3~1.5.21995~19991.6、2.020001.6.1、2.0.1、2.1、2.1.120012.1.2、2.1.320022.2~2.72001~至今3.x2008~至今Python通过一个参与者众多的开发社区来保持版本更新和改进。Python的开发者通过一个在线的源代码控制系统协同工作,所有对Python的修改必须遵循Python增强提案(PythonEnhancementProposal,PEP),并通过Python扩展回归测试系统的测试。目前,由一个非正式的组织Python软件基金(PythonSoftwareFoundation,PSF)负责组织会议并处理Python的知识产权问题。Python3.0不再向后兼容,Python2.7将作为Python2.x的最后一个版本。但Python2.x依然得到众多开发人员的支持,Python因此也一直保持该版本的更新。Python官方已决定于2020年停止对Python2.7的支持,从而使开发人员有充裕的时间过渡到Python3.x。为了方便叙述,本书在后面的内容中将Python3.x简称为Python3,Python2.x简称为Python2。目前,Python3的最新版本为3.8.0(2019年11月)。Python官方主页:《全国计算机等级考试二级Python语言程序设计考试大纲(2018年版》建议考试使用的Python版本为3.4.2~3.5.3。1.1.4Python3与Python2的区别1.Python3中的所有文本均使用Unicode编码Python3中的字符默认使用Unicode编码(UTF-8),可以很好地支持中文或其他非英文字符。在Python3中,不需要使用“u”或“U”前缀表示Unicode字符,但二进制字符串必须使用“b”或“B”前缀。Python2中不能使用汉字作为变量名,否则会出错。1.1.4Python3与Python2的区别2.print()函数代替了print语句Python3使用print()函数来输出数据,示例代码如下。>>>x=100>>>print(10,'abc',x)10abc100Python2使用print语句输出数据,示例代码如下。>>>x=100>>>print10,'abc',x10abc100>>>print(10,'abc',x) #print语句将(10,'abc',x)作为一个元组输出(10,'abc',100)1.1.4Python3与Python2的区别3.完全的面向对象Python2中的各种数据类型,在3中全面升级为类(class)。例如,在Python2中测试数据类型结果如下。>>>int,float,str(<type'int'>,<type'float'>,<type'str'>)在Python3中测试数据类型结果如下。>>>int,float,str(<class'int'>,<class'float'>,<class'str'>)1.1.4Python3与Python2的区别4.部分方法和函数用视图和迭代器代替了列表下面的常用方法或函数在Python2中返回列表,在Python3中有多处改变。字典的keys()、items()和values()方法用返回视图代替了列表。不再支持Python2中的iterkeys()、iteritems()和itervalues()。

map()、filter()和zip()函数用返回迭代器代替了列表。1.1.4Python3与Python2的区别5.比较运算中的改变比较运算的主要改变如下。用“!=”代替了“<>”。比较运算“<”“<=”“>=”和“>”在无法比较两个数据大小时,会产生TypeError异常。在Python2中,1<‘’、0>None、len<=len(函数名进行比较)等运算返回True,而在Python3中则会产生TypeError异常。在判断运算“==”和“!=”中,不兼容类型的数据视为不相等。1.1.4Python3与Python2的区别6.整数类型的改变整数类型的主要改变如下。不再有长整数(long)的概念,整数类型只有int一种。在Python3中,“/”除法运算返回浮点数(float),“//”除法会只保留整数部分。Python2在两个整数的“/”除法运算中返回整数(截断了小数部分)。整数不再限制大小,删除sys模块中的maxint(最大整数)常量。不再支持以数字0开头的八进制常量(如012),而改成用前缀“0o”表示(如0o12)。1.1.4Python3与Python2的区别7.字符串的改变在Python2中:字符串中的字符默认为单字节,字符串的类型有str和unicode两种。带前缀“u”或“U”的Unicode字符串的类型为unicode(注意首字母小写)其他的字符串(包含带前缀“b”“B”“r”或“R”的字符串)为str类型。在Python3中:字符默认为Unicode字符,即双字节字符。字符串的数据类型分为str和bytes两种。仍可使用字符串前缀“u”或“U”,但会被忽略。字符串前缀“b”或“B”表示二进制字符串,其类型为bytes。1.1.4Python3与Python2的区别8.取消了file数据类型Python3取消了Python2中的file数据类型。使用open()函数打开文件时,返回的是_io.TextIOWrapper类的实例对象,示例代码如下。>>>f=open('d:/test.txt','w')>>>type(f)<class'_io.TextIOWrapper'>Python2的open()函数返回的是file类型的对象,示例代码如下。>>>f=open('d:/test.txt','w')>>>type(f)<type'file'>1.1.4Python3与Python2的区别9.异常处理的改变在Python3中,异常处理的改变主要如下。

BaseException是所有异常类的基类,删除了StardardError异常。取消了异常类的序列行为和message属性。用raiseException(args)代替raiseException,args语法在捕获异常的except语句中引入了as关键字。1.1.4Python3与Python2的区别10.其他主要的语法改变其他主要的语法改变如下。增加了关键字as和with。增加了常量True、False、None。加入nonlocal语句。使用noclocalx声明x为函数外部的变量。删除了raw_input(),用input()代替。删除了元组参数解包。不能用def(a,(b,c)):pass类似的语句定义函数。增加了2进制字面量,如b'0110110110'。bin()函数可返回整数的2进制字符串。扩展的可迭代解包。在Python3里,“a,b,*x='1234'”和“*x,a='1234'”都是合法的。对象和序列是可迭代的。面向对象引入了抽象基类。类的迭代器方法next()改名为__next__(),并增加内置函数next(),用以调用迭代器的__next__()方法。1.2运行Python程序本节主要内容Python程序的运行方式Python程序的可执行文件1.2.1Python程序的运行方式Python程序有两种运行方式:程序文件运行和交互式运行。程序文件是包含一系列Python语句的源代码文件,文件扩展名通常为py。在Windows的命令提示符窗口中,可使用Python.exe来执行Python程序文件。首先,由Python解释器将py文件翻译成字节码文件,再由Python虚拟机(PythonVirtualMachine,PVM)逐条翻译、执行字节码中的Python语句。Python还可以通过交互方式运行。在Windows系统的命令提示符窗口中运行Python.exe,可进入Python的交互环境。在其中输入Python语句后,按【Enter】键运行,1.2.2Python程序的可执行文件可将Python程序打包为一个独立的可执行程序,即冻结二进制文件(FrozenBinary)。冻结二进制文件是将Python程序的字节码、PVM以及程序所需的Python支持文件等捆绑到一起形成的一个独立文件。在Windows系统中,冻结二进制文件是一个exe

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论