- 1、本文档共42页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
课时7函数与模块
课时目标
1.掌握自定义函数的构造和调用方法。2.掌握模块的导入方法和常用函数的应用。
一、模块
1.Python内置模块:数学运算math模块、生成随机数random模块、图像Image模块。
2.Python其他模块:用于实现部分操作系统功能(可用于文件、目录等操作)的os模块,与时间处理有关的time模块,可实现科学计算、数据可视化的numpy和matplotlib,用于多媒体开发和游戏软件开发的pygame模块,支持图形处理的tkinter等。
3.在Python中,把一组函数放到一个.py文件里,这个文件就称为一个模块。
4.使用import语句或from-import语句导入Python内置的模块和来自第三方的模块,将能使用其中的函数,如sqrt和random函数。
二、函数的构造和应用
def函数名(参数集合):
函数体
[return函数值]
函数名的命名规则和变量名一样。完成函数的构造后,在程序中就可以根据需要,像内建函数一样调用该函数。
三、模块的导入及应用
在PythonShell中导入math模块,并调用该模块中的sqrt函数,可采用以下两种方法:
方法一
方法二
importmath
math.sqrt(9)
3.0
frommathimportsqrt
sqrt(9)
3.0
1.math模块中的常用常数与函数
名称
含义
math.e
自然常数e
math.pi
圆周率π
math.ceil(x)
对x向上取整,比如x=1.2,返回2
math.floor(x)
对x向下取整,比如x=1.2,返回1
math.pow(x,y)
指数运算,得到x的y次方
math.log(x)
对数,默认基底为e
math.sin(x)
正弦函数
math.cos(x)
余弦函数
math.tan(x)
正切函数
math.degrees(x)
角度转换成弧度
math.radians(x)
弧度转换成角度
2.random模块中的常用函数
名称
含义
random.random()
随机生成一个[0,1)范围内的实数
random.uniform(a,b)
随机生成一个[a,b]范围内的实数
random.randint(a,b)
随机生成一个[a,b]范围内的整数
random.choice(seq)
从序列的元素中随机挑选一个元素,比如:random.choice(range(10)),从0到9中随机挑选一个整数
random.sample(seq,k)
从序列中随机挑选k个元素
random.shuffle(seq)
将序列的所有元素随机排序
例1编写一个自定义函数实现判断字符串s是否是回文字符串,请在划线处填入合适的代码。
算法思想:采用双指针分别指向首尾字符,若两者相同,依次向中间靠拢
defhw(s):
i=0
j=len(s)-1
while①:?
if②:?
returnFalse
i+=1
j-=1
returnTrue
s1=input(请输入字符串s:)
t=hw(s1)
if③:?
print(字符串+s1+是回文字符串!)
else:
print(字符串+s1+不是回文字符串!)
答案①ij或ilen(s)∥2②s[i]!=s[j]③t
解析本题考查自定义函数的应用。①指针i和j分别指向字符串s的首和尾,在两端各取一个字符进行比较,若i==j意味着该字符串长度为奇数,中间位置可以不用比较,若字符串长度为偶数,最后一次比较完后,i将超出j的值。②若两端各取一个字符,取出的字符不相等,返回假。③调用自定义函数,将函数的值赋给t,那么t可能是True或False。
变式训练1下列Python函数实现了将大写字母循环后移t个位置功能,如A向后移3个位置后变为D,X后移3位后,变成A。已知A的ASCII码值为65。
defjm(s,t):
n=ord(s)-65+t
ifn=25:
?
returnchr(n+65)
(1)请在程序划线处填入合适的代码。
(2)若执行语句print(jm(Y,4)),则输出的内容是。?
答案(1)n=n-25(2)C
解析根据题目的功能,n是加密字母在字母中位置,值的范围是[0,25],如果向后移动后超出25,则表示循环向前移动,需要减去25,最后返回ASCII码值对应的字母。将Y后移4位的值为C。
例2生成一个随机密码,要求大写字母、小写字母和数字必须至少包含一个,且密码的长度不能少于6位。编写的Python代码如下:
imp
您可能关注的文档
- 第一章 课时3 数据采集与编码(二) 课件(共70张ppt)浙教版(2019)必修1.pptx
- 第一章 课时4 数据管理与安全、数据与大数据 课件(共78张ppt)浙教版(2019)必修1.pptx
- 第一章 验收卷(一) 数据与信息 课件(共27张ppt)浙教版(2019)必修1.pptx
- 课时1 Python程序设计语言基础 课件(共64张ppt)浙教版(2019)必修1.pptx
- 课时1 人工智能的概念与发展 课件(共49张ppt)浙教版(2019)必修1.pptx
- 课时1 数据整理与计算 课件(共41张ppt)浙教版(2019)必修1.pptx
- 课时1 算法的概念及描述 课件(共42张ppt)浙教版(2019)必修1.pptx
- 课时2 Python基本数据结构 课件(共74张ppt)浙教版(2019)必修1.pptx
- 课时2 大数据处理的基本思想与架构 课件(共42张ppt)浙教版(2019)必修1.pptx
- 课时2 人工智能的应用及对社会的影响 课件(共36张ppt)浙教版(2019)必修1.pptx
- 第18讲 第17课 西晋的短暂统一和北方各族的内迁.docx
- 第15讲 第14课 沟通中外文明的“丝绸之路”.docx
- 第13课时 中东 欧洲西部.doc
- 第17讲 第16 课三国鼎立.docx
- 第17讲 第16课 三国鼎立 带解析.docx
- 2024_2025年新教材高中历史课时检测9近代西方的法律与教化含解析新人教版选择性必修1.doc
- 2024_2025学年高二数学下学期期末备考试卷文含解析.docx
- 山西版2024高考政治一轮复习第二单元生产劳动与经营第5课时企业与劳动者教案.docx
- 第16讲 第15课 两汉的科技和文化 带解析.docx
- 第13课 宋元时期的科技与中外交通.docx
最近下载
- 单向板肋梁楼盖计算.docx
- 作业4:工学一体化课程《小型网络安装与调试》工学一体化课程考核方案.docx VIP
- 中国画之写意画.ppt VIP
- (2019苏教)小学科学三年级上册:全册整套教案资料.pdf
- 核心素养导向的高中数学课例设计研究与实践(样例)(1).doc
- 驾驶证延期委托书模板.doc
- 作业5:工学一体化课程《小型网络安装与调试》工学一体化课程终结性考核试题.docx VIP
- 作业5:工学一体化课程《小型网络安装与调试》工学一体化课程终结性考核试题.pdf VIP
- 中国画的构图形式ppt课件.pptx
- 作业11:《小型网络安装与调试》工学一体化课程教学进度计划表.pdf VIP
文档评论(0)