Python语言课件第 3 章 类与模块PPT课件内容

上传人:b****i 文档编号:5527257 上传时间:2023-11-21 格式:PPTX 页数:59 大小:397.41KB
返回 下载 相关 举报
Python语言课件第 3 章 类与模块PPT课件内容_第1页
第1页 / 共59页
Python语言课件第 3 章 类与模块PPT课件内容_第2页
第2页 / 共59页
Python语言课件第 3 章 类与模块PPT课件内容_第3页
第3页 / 共59页
Python语言课件第 3 章 类与模块PPT课件内容_第4页
第4页 / 共59页
Python语言课件第 3 章 类与模块PPT课件内容_第5页
第5页 / 共59页
点击查看更多>>
文档描述
第第3 3章章 类类与模块与模块3.1 类类和对象和对象3.1.1 类的格式与创建对象类的格式与创建对象1.类类的一般形式的一般形式 在类声明中,class是声明类的关键字,表示类声明的开始,类声明后面跟着类名,按习惯类名要用大写字母开头,并且类名不能用阿拉伯数字开头。类中的self在调用时代表类的实例,与c+或Java中的this作用类似。2.创建对象创建对象类在使用时,必须创建类的对象,再通过类的对象来操作类中的成员变量和成员方法。创建类对象的格式为:对象名=类名()3.调用成员方法调用成员方法调用类的方法时,需要通过类对象调用,其调用格式如下:对象名.方法名(self)【例3-1】编写一个计算二数之和的类。方法sum(self,x,y)的参数self代表类对象自身,self.x=x 即把赋值语句右边的参数x值赋值给左边类成员变量x。为了区分参数及成员变量,在成员变量x前面添加self。4.类的公有成员和私有成员类的公有成员和私有成员 在Python程序中定义的成员变量和方法默认都是公有成员,类之外的任何代码都可以随意访问这些成员。如果在成员变量和方法名之前加上两个下划线“_ _”作前缀,则该变量或方法就是类的私有成员。私有成员只能在类的内部调用,类外的任何代码都无法访问这些成员。【例3-2】私有成员示例。5.类的构造类的构造方法方法 在Python中,类的构造方法为 _ _init_ _(),其中方法名开始和结束的下划线是双下划线。构造方法属于对象,每个对象都有自己的构造方法。如果一个类在程序中没有定义_ _init_ _()方法,则系统会自动建立一个方法体为空的_ _init_ _()方法。如果一个类的构造方法带有参数,则在创建类对象时需要赋实参给对象。在程序运行时,构造方法在创建对象时由系统自动调用,不需要用调用方法的语句显式调用。【例3-3】设计一个类Person。该类有Name(姓名)、Age(年龄)两个变量,可以从键盘输入雇员姓名、年龄等信息。6.析构方法析构方法 在Python中,析构方法为 _ _del_ _(),其中开始和结束的下划线是双下划线。析构方法用于释放对象所占用的资源,在Python系统销毁对象之前自动执行。析构方法属于对象,每个对象都有自己的析构方法。如果类中没有定义_ _del_ _()方法,则系统会自动提供默认的析构方法。【例3-4】析构方法示例。3.1.2 类的类的继承继承1.类的单继承类的单继承 类的单继承的一般形式为:class 子类名(父类名):子类的类体语句【例【例3-5】定义一个父类Person,再定义一个子类Sunny继承Person,并在子类中调用父类的方法。2.类的多继承类的多继承 Python在多继承时,如果这些父类中有相同的方法名,面在子类中使用时没有指定父类名,则Python系统将从左往右按顺序搜索。Python支持多继承,多继承的一般形式为:class 子类名(父类名1,父类名2,.,父类n):子类的类体语句【例3-6】多继承示例。3.1.3 运算符运算符重载重载 运算符重载就是重新定义运算法则。在Python中,重载加法运算使用_add_()方法定义运算法则,重载减法运算使用_sub_()方法运算法则。【例3-7】设有2个二维元组:(7,10)、(5,-2),它们的加法运算法则为:对应元素相加。它们的减法运算法则为:对应元素相减。编写程序,计算这2个元组相加、相减的值。编写程序代码如下:3.2 模块模块3.2.1 模块的导入模块的导入在Python中用关键字import来导入某个模块,其导入模块的形式有两种。1.用import形式导入模块 用import导入模块的一般形式为:import 模块名 在调用import导入模块的函数时,必须使用以下形式来调用:模块名.函数名2.用用 from.import.形式导入模块形式导入模块 用 from.import.导入模块的一般形式为:from 模块名 import 函数名或变量名 比如要引用模块math中的sqrt()函数,可以用 from math import sqrt()语句来导入。在调用from.import.导入模块的函数时,直接使用函数名来调用模块中的函数,而不需要在函数的前面加上模块名。3.导入模块的顺序导入模块的顺序 当需要导入多个模块时,应按照下面的顺序依次导入模块:(1)导入 Python系统的标准库模块,如os、sys等;(2)导入第三方扩展库模块,如pygame、mp3play等;(3)导入自己定义和开发的本地模块。3.2.2 自定义自定义模块模块 在Python中,每个包含有函数的Python文件都可以作为一个模块来使用,其模块名就是文件名。【例例3-8】自定义模块使用示例。(1)设有Python文件hello.py,其中包含hh()函数,代码如下:(2)调用模块hello中hh()函数的程序ex3_8.py代码如下:【例3-9】编写一个计算二数和的模块,再在另一个程序中调用该模块。(1)编写模块代码,其中包含有计算二数之和的函数sum(),保存为ex3_9_1.py。(2)编写调用模块程序ex3_9_2.py,其代码如下:3.2.3 常用常用标准库模块标准库模块1.核心模块核心模块(1)os模块os模块中的大部分函数通过对应平台相关模块实现,其常用方法有open()、file()、listdir()、system()等函数。(2)sys模块sys模块用于处理 Python 运行时环境。例如,退出系统时,使用命令:sys.exit(1)(3)time模块time 模块提供了一些处理日期和时间的函数。例如用time()函数来获得当前时间。(4)math模块math 模块实现了许多对浮点数的数学运算函数。2.线程与进程模块线程与进程模块 该部分的模块主要是Python 系统所支持的线程与进程方面的函数。(1)threading 模块threading 模块为线程提供了一个高级接口,只需要继承 Thread 类,定义好 run 方法,就可以创建一个新的线程.使用时首先创建该类的一个或多个实例,然后调用 start 方法.这样每个实例的 run 方法都会运行在它自己的线程里。(2)Queue 模块Queue 模块提供了一个线程安全的队列(queue)实现。通过它可以在多个线程里安全地访问同一个对象。(3)commands 模块commands 模块是一些在Unix系统中用于执行外部命令的函数。3.网络协议模块网络协议模块(1)socket 模块socket 模块实现了网络数据传输层的接口,使用该模块可以创建客户端或是服务器的 套接字socket通信。(2)SocketServer 模块SocketServer 为各种基于socket套接字的服务器提供了一个框架,该模块提供了大量的类对象,可以用它们来创建不同的服务器.(3)urllib 模块(4)cookie 模块(5)ftplib 模块(6)httplib 模块(7)webbrowser 模块4.正则表达式正则表达式re模块模块5.r原生字符原生字符6.数据序列化模块数据序列化模块pickle3.2.4使用使用pip安装和管理扩展模块安装和管理扩展模块 1.安装安装 pipPython安装第三方的模块,大多使用包管理工具pip进行安装。Python包管理工具pip提供了对 Python 包的查找、下载、安装、卸载的功能。下载 pip 下载地址是:https:/pypi.python.org/pypi/pip#downloads下载完成之后,解压到一个文件夹,使用控制台命令窗口进入解压目录,输入安装命令:python setup.py install 安装pip完后还需要配置环境变量,pip 指令才能生效。2.通过通过 pip 安装扩展模块安装扩展模块例如:(1)安装MySQL数据库管理模块:pip install pymysql(2)安装图形处理库模块:pip install pillow(3)安装SomePackage模块:pip install SomePackage (4)卸载SomePackage模块:pip uninstall SomePackage (5)查看当前已经安装的模块:pip list2.3.2 集合集合集合是一个无序不可重复的序列,是一种基本数据类型。集合分为可变集合(set)和不可变集合(frozenset)两种类型。可变集合的元素是可以添加、删除的,而不可变集合的元素不可添加、不可删除。1.集合的定义 集合用一对大括号“”把元素括起来,元素之间用逗号“,”分隔。例如:s1=1,2,3,4,5s2=a,b,c,d上述s1和s2都是集合。2.集合的创建 使用set()函数创建一个集合。3.集合元素的添加 python 集合有两种方法用于添加元素,分别是add()和update()。4.集合元素的 删除 用remove()可以删除集合中的元素。例如:a=set(boy)a.remove(y)ao,b5.集合的专用操作符集合的专用操作符 集合有4个专用操作符:&(交集)、|(并集)、-(差集,又称为“相对补集”)、(对称差分)。设有两个集合a、b,其关系如下:a&b 表示两个集合的共同元素;a|b表示两个集合的所有元素;a-b表示只属于集合a,不属于集合b 的元素;a b表示两个集合的非共同元素;2.4 程序控制结构2.4.1 顺序控制顺序控制语句语句在Python中使用print()函数输出数据。(1)直接输出(2)格式化输出 print()函数可以使用%格式化输出数据。常用的格式化输出符号如表2-1所示。【例2-1】格式化输出及控制换行输出示例。2.输入语句输入语句 在Python中,使用input()函数输入数据。input()函数只能输入字符数据,当需要输入数值型数据时,可以使用eval()函数将字符转换为数值。【例2-2】从键盘上输入二个数,计算这二数之和。编写源程序如下:print(输入一个整数:)a=eval(input()print(输入一个实数:)b=eval(input()str=input()print(str)c=a+bprint(c=,a,+,b,=,c)【例2-3】交换两个变量的值。在编写程序时,有时需要把两个变量的值互换,Python在交换值的运算不需要用中间变量。2.4.2 if选择语句选择语句语法格式为:【例2-4】从键盘任意输入两个整数,按从小到大的顺序依次输出这两个数。源程序如下:【例2-5】对给定的三个数,求最大数的平方。2.双分支双分支选择选择结构结构if 条件表达式:程序段1 else:程序段2 3.多分支选择多分支选择结构结构【例2-7】将百分制转换为五级记分制。if 条件表达式1:程序段1 elif条件表达式2:程序段2 elif条件表达式n:程序段n else:程序段n+12.4.3 循环语句循环语句1.for循环语句循环语句当循环变量的步长值为1时,可以省略,即可写成:【例2-8】求从1加到9的和。【例2-9】在循环体内发生循环变量的值,观察循环次数。3.3 案例精选案例精选【例3-11】设计一个学生类。这个学生类中包含有学生的学号、姓名和成绩。计算3名学生的成绩平均分。编写程序代码如下:【例3-12】设计一个学生类。这个学生类中包含有学生的学号、姓名和成绩,并能根据学生人数计算成绩平均分。
展开阅读全文
相关文档
相关搜索

最近上传DOC

最近上传PPT

最近上传RAR


当前位置:首页 > IT大数据 > 计算机


黔ICP备20002965号-1  在线客服QQ:365045600

Copyright © 2020-2023 www.xinwenku.com All rights reserved 新文库网 版权所有