配色: 字号:
《Python基础案例教程》第5章(微课版)课件
2022-12-13 | 阅:  转:  |  分享 
  
《Python基础案例教程》(微课版)第5章 Python函数模块宣国庆第5章 Python函数模块函数是Python语言中的基本模块,
对于需要重复使用的代码块,将它们以函数的形式组织在一起,可以大大提升编程效率。Python中很多内置函数如print()、inpu
t()等,除此之外,类似面积的计算、二元一次方程的求解、特定格式的输出等等也都可定义为函数。内置函数和自定义函数使得Python代
码结构更加简洁清晰,易于维护。本章除了可以学习Python的函数之外,还将介绍模块的使用,包括模块的调用和封装等。教学内容01
函数02 模块目录CONTENTS第5章 Python函数模块第5章 Python函数模块函数其实就是能够实现某个功能,相对
独立的代码块。编写程序时,提前定义好函数,在程序中就可以重复调用,从而降低代码的重复率,大大提高编程效率。Python中函数主要包
括内置函数和自定义函数两种。5.1 函数本课知识点 (1)sorted( )排序函数5.1.1 内置函数sort
ed( )函数有3个参数,其中iterable是要排序的对象,key参数可以自定义排序的规则,而reverse参数默认值为Fals
e,表示按升序排序,当reverse参数值为True时,表示按降序排序。本课知识点 (2)enumerate( )
函数5.1.1 内置函数enumerate( )也是内置函数,它的作用是将一个序列转变为一个索引序列,新的序列包含了原来列表中的元
素的值及其索引。秋高气爽,学院要举办秋季运动会,投掷组裁判员王青松希望能有一个程序,在投掷比赛时,输入所有参赛运动员的成绩后,就能
自动打印该项目的获奖名单。你能帮他编写程序,实现这样的效果吗?案例分析5.1.1 内置函数案例1 打印获奖名单案例分析“案例1
打印获奖名单”算法流程图5.1.1 内置函数“案例1 打印获奖名单”代码案例分析“案例1 打印获奖名单”测试结果5.1.1 内置函
数拓展阅读表5.1 Python常见内置函数5.1.1 内置函数拓展阅读表5.2 operator 模块常用函数5.1.1 内
置函数拓展阅读5.1.1 内置函数operator 模块中的itemgetter()函数,它的作用是获取对象指定对位置的数据。使用
sorted()函数对a列表进行排序时,排序时按照自定义的规则(key=itemgetter(1)),即按列表a中的每个元素中第1
个位置上的数值进行排序。课后练习1.阅读程序,写出结果。5.1.1 内置函数2.完善程序,并写出运行结果。请在横线处填写合适的代码
,输入两个数字,求出它们的最大因数。输入数字 44和32,输出的结果为: 3.编写程序,
求出图中阴影部分的面积。本课知识点 (1)定义函数的方法5.1.2定义函数def 函数名(参数):函数体retur
n 返回值说明:调用函数时,参数和返回值可以没有,但是函数名后面的小括号和冒号必须有。 本课知识点 (2)定义函数
的语法规则5.1.2定义函数 函数包括函数名、参数、函数体和返回值几部分,它在定义时,要遵循一定的语法规则。def开头:函数以de
f关键词开头,后面紧跟着函数名、小括号和冒号;参数:参数必须放在小括号内,可以是一个参数,也可以是多个参数,参数列表中间用逗号隔开
。函数体:函数的内容要使用缩进来表示语句属于函数体。返回值:函数结束时,一般会返回一个值,可以是任意一种类型的数据,也可是表达式。
如果没有返回值,默认就是返回None。在学习数学几何知识时,已知圆柱体的底面半径和高,就能求出圆柱体的表面积和体积。如果能自定义一
个函数,设置函数的参数为圆柱体的半径和高,用户输入任意半径和高,通过函数就能自动返回要求的结果。案例分析案例2 求圆柱体的表面积
和体积5.1.2定义函数案例分析“案例2 求圆柱体的表面积和体积”算法流程图5.1.2定义函数案例分析“案例2 求圆柱体的表面积和
体积”代码5.1.2定义函数案例分析“案例2 求圆柱体的表面积和体积”测试结果5.1.2定义函数拓展阅读5.1.2定义函数Pyth
on语言中,参数是函数的重要组成部分。如图所示,函数参数分为形式参数和实际参数,简称形参和实参。在定义函数时小括号中的参数都是形参
。在主程序中调用函数时,代入的参数是实参。拓展阅读5.1.2定义函数必须参数是调用函数时必须传入的参数,而且在调用时参数的数量和顺
序要和定义时一致。而默认参数是在定义函数时,给参数添加一个默认值。调用函数时默认参数可以不传入任何值,此时函数就会使用参数的默认值
,但是要注意默认参数在定义时必须放在最后。拓展阅读5.1.2定义函数Python语言中的round()函数的作用是对浮点数取近似值
,同时还可以设定保留几位小数。课后练习1.阅读程序,写出结果。2.完善程序,并写出运行结果。输入一个十进制正整数,求出它各数位上数
字的和。请在横线处填写合适的代码,完成程序的编写,写出程序运行结果,并上机验证。输入数字15,则输出的结果: 5.1.2定义函数输
出的结果为: 输入数字100,则输出的结果: 课后练习3.编写程序,自定义一个函数,求字
典中值最大的元素。利用自定义的函数找出下面A组中身高最高的人。5.1.2定义函数A= {''李明'': 1.73, ''王强'': 1.6
8, ''金星'': 1.83, ''孙国涛'': 1.75}本课知识点 (1)变量的作用域5.1.3 调用函数程序中的变
量能起作用的范围,就是它的作用域。一般情况下,在函数内部声明的变量,它的作用域就限于函数内部,不能在函数外部访问,我们称这样的变量
叫局部变量。而定义在函数外部的变量,它的作用域是整个程序,这样的变量叫全局变量。本课知识点 (2)global语句
global 变量名例:a=1 def fun( ): global aa=4 fun( ) pr
in (''a='',a)运行结果:a=4说明:在函数内部用global 语句声明变量a为全局变量后,那么在函数内部就可以改变全局变量
的a的值了。 5.1.3 调用函数方舟子给自己的电脑设置了密码“abc@123”,但是他觉得还不够安全。请你帮他设计一个预防
恶意登录的程序,登录时如果输入密码连错三次,就会提示“此账号已被冻结,请10分钟后再登录!”案例分析案例3 预防恶意登录5.1.
3 调用函数案例分析“案例3 预防恶意登录”算法流程图5.1.3 调用函数案例分析“案例3 预防恶意登录”代码5.1.3 调用
函数案例分析“案例3 预防恶意登录”测试结果5.1.3 调用函数拓展阅读Python语言中,调用函数完成指定的功能后,如求值计算
,需要使用return语句返回求值的结果,这个结果就是返回值。如图所示,返回值的类型可以是数字、字符串、列表等,也可以是一个表达式
。5.1.3 调用函数拓展阅读 有时候函数也可以没有返回值,如上所示,它可以是一组打印操作。当没有任何返回值的时候,会返回一个
空值None。5.1.3 调用函数课后练习1.阅读程序,写出程序运行结果,并上机验证。2.编写程序,利用函数计算1~n的和。输入a
和b的值分别为3和5,输出结果为:5.1.3 调用函数第5章 Python函数模块在Python语言中,在一个程序里可以调用函数
来实现某个特定的功能,如果有多个程序都需要用到同一个或同一系列函数,则可以将这些函数存储在一个独立的文件里,也就是模块里,以供其他
程序导入使用。Python提供了很多内置的模块,如前面使用过的operator运算符模块,当然也可以自己定义并封装一个模块,方便导
入调用。5.2 模块本课知识点 (1)导入整个模块5.2.1 调用模块当上述代码运行时,首先导入time时间模
块,即打开time.py文件,程序中的print( time.strftime("%Y-%m-%d "))语句调用了获取时间函数s
trftime( )。调用时用了模块名time和函数名strftime,中间用点“.”分隔。import 模块名模块名.函数名(
)如 import time # 导入时间模块 print( time.strftime (''%Y-%m
-%d’)) # 按照指定的年月日格式打印输出: 2020-05-05本课知识点 (2)random(
) 函数5.2.1 调用模块random( ) 函数的作用是随机生成一个大于等于0,小于1的实数。import random
random.random( )如 import random print(random.random( ))
运行结果:0.1124064801518655学校元旦联欢会,为了鼓励同学们积极参与,设定了抽奖环节,只要表演节目或是参加游
戏的同学就可以得到一次抽奖机会,百分百中奖。因此特别请了计算机系的李小华同学编写了这样一个随机抽奖程序。案例分析案例4 随机抽奖
游戏5.2.1 调用模块案例分析“案例4 随机抽奖游戏”算法流程图“案例4 随机抽奖游戏”代码5.2.1 调用模块案例分析
“案例4 随机抽奖游戏”测试结果5.2.1 调用模块拓展阅读Python语言除了可以导入整个模块文件之外,也可以使用from…
import 语句导入模块中的一个或多个指定函数。在本例程序中,使用了from random import random 语句,就
仅仅导入了random模块中的random函数,在调用random函数时可以不用在函数名前加上模块名,语句直接写为num=rand
om( )。5.2.1 调用模块拓展阅读 sys模块是Python语言中很常用的模块,它提供了许多用于操作Python运行环
境的函数和变量。表5.3 sys模块常用函数5.2.1 调用模块拓展阅读random模块在程序中也很常用,它可以生成随机浮点数
、整数、字符串等。表5.4 random模块常用函数5.2.1 调用模块课后练习1.连线题,阅读程序,请将语句与其可能的运行结
果用直线连起来。2.编写一个猜数游戏的程序。计算机随机生成一个1~10之间的整数a,用户通过键盘输入所猜想的数字,如果大于a,就显
示“大了!”,如果小于就显示“小了!”,直到猜中为止。猜中后显示“经过n次,你终于猜中了,恭喜你!”。5.2.1 调用模块本课知
识点 (1)封装模块5.2.2 封装模块封装模块其实就是将多个函数的封装放在一个扩展名为“.py”文件中,模块的
名称就是文件的名字。在编写其他程序时可以使用import语句导入自定义模块,导入的方法和导入标准库模块一样。本课知识点
(2)模块文件中的注释文件中定义了一个打印分隔符的函数,供其他文件调用。在定义模块的时候,一般会在文件最前面加上几行注释,前
面2行是标准注释,图中第1行是表示当前定义的模块可以直接在Unix/Linux/Mac上运行,第2行注释表示当前文件所使用的是标准
UTF-8编码。#!/usr//bin/env python3# -- coding:utf-8 --def printlin
e (n):print(‘----------- {} ----------''.format(n))5.2.2 封装模块在编写数
学相关的程序时,经常会遇到求各种形状面积的计算的问题,你能不能自己编写一个模块文件,包含各种形状的面积计算函数,如三角形、矩形、圆
形、梯形等,以便于其他程序调用。案例分析案例5 常见形状的面积计算5.2.2 封装模块案例分析“案例5 常见形状的面积计算”
算法流程图5.2.2 封装模块案例分析自定义模块文件 shapeArea.py 代码 主程序“案例5 常见形状的面积计算.py
”代码5.2.2 封装模块案例分析“案例5 常见形状的面积计算”测试结果5.2.2 封装模块拓展阅读 Python的模
块通常有三种,第一种是系统自带的模块,Python系统内置了200多个模块,这些内置的模块统称为标准库;第二种是第三方模块,Pyt
hon还有大量的第三方模块,如Pillow(图像处理模块)、requests(处理网络资源的模块)等,使用他人写好的模块,可以省去
很多自己编写的麻烦,极大地提高了程序开发效率。第三种是自定义模块,也就是用户自己写的模块。自定义模块文件在使用时一般和主程序文件放在同一位置,这样在调用时就不用指明模块文件的所在路径。5.2.2 封装模块拓展阅读模块文件的扩展名是“.py”,主程序调用模块时需引用模块文件名。文件名只能由字母、数字和下划线组成,而且不能与Python关键字同名,也不能和系统内置的模块名重复。5.2.2 封装模块课后练习1.阅读程序,写出结果。2.编写程序。三角形的三条边是a,b,c(a,b,c三条边的值均大于0),若a2+b2=c2,则它是以c为斜边的直角三角形。请你定义一个模块文件,用上述方法判断其是否为直角三角形,并在主程序调用此模块,输入三角形三条边的值,打印出判断结果。5.2.2 封装模块输出结果为:THANKS FOR WATCHING
献花(0)
+1
(本文系籽油荃面首藏)