Python程序实现复习课件-2024-2025学年浙江省高中学业水平考试信息技术总复习

2025-04-26
| 44页
| 639人阅读
| 9人下载
普通

资源信息

学段 高中
学科 信息技术
教材版本 高中信息技术浙教版必修1 数据与计算
年级 高二
章节 3.3 简单算法及其程序实现
类型 课件
知识点 顺序结构的程序实现,分支结构的程序实现,典型算法,循环结构的程序实现
使用场景 高考复习-学业考试
学年 2025-2026
地区(省份) 浙江省
地区(市) -
地区(区县) -
文件格式 PPTX
文件大小 312 KB
发布时间 2025-04-26
更新时间 2025-04-26
作者 匿名
品牌系列 -
审核时间 2025-04-26
下载链接 https://m.zxxk.com/soft/51830886.html
价格 1.00储值(1储值=1元)
来源 学科网

内容正文:

Python程序实现 学考要点1顺序结构与分支结构 【必修1 数据与计算第79~85页 指导意见第13~19页】 1.顺序结构:算法中各个步骤按照先后顺序依次执行的结构。 2.交换两个变量的值的方法 (1)序列赋值:a,b=b,a (2)数学法:a=a+b;b=a-b;a=a-b (3)第三方交换:t=a;a=b;b=t 3.分支结构:先进行条件判断,再根据判断结果分别执行不同处理的 控制结构。算法进行程序实现时,分支结构可以用if语句来实现。 (1)单分支结构 流程图走向:当条件表达式为真时,执行语句块;否则什么都不执行 if <条件表达式>: <语句块> 续表 流程图走向:当score>60时,输出“合格”;否则什么都不执行 score=float(input()) if score>60:    print('合格') (2)双分支结构 流程图走向:当条件表达式为真时,执行语句块1;否则执行语句块2 if <条件表达式>: <语句块1> else: <语句块2> 流程图走向:当x>0时,给变量y赋x的值;否则,给变量y赋-x的值 x=float(input()) if x>0: y=x else: y=-x print(y) (3)多分支结构 流程图走向:当<条件表达式1>的值为真时,执行<语句块1>, 本块if语句结束。若为假,则判断<条件表达式2>的值,以此类推。直到找到一个为真的条件时,才执行相应的语句块,本块if语句结束 if <条件表达式1>: <语句块1> elif <条件表达式2>: <语句块2> …… elif <条件表达式n>: <语句块n> else: <语句块n+1> ①一个if语句可以包含多个elif子句,最后的else子句是可选的。 ②Python语句中的缩进:语句块缩进4个空格。 学考要点2循环结构 【必修1数据与计算第86~89页 指导意见第13~19页】 1.for循环   for语句: 遍历序列中的元素执行循环体(从序列中的第一个元素开始,依次选择每个元素执行操作直至结束)。当序列中的元素全部遍历完成后,程序继续执行else子句中的语句块 for循环格式: for <变量> in <序列>: <循环体> [else: #else子句可选 <语句块>] list1=[1,2,3,4] for i in list1:   print(i) 第1次循环,循环变量i=list1[0]=1;第2次循环,循环变量i=list1[1]=2;第3次循环,循环变量i=list1[2]=3;第4次循环,循环变量i=list1[3]=4;遍历完list1中的所有元素,循环结束 word='abcd' for x in word: print(x) 第1次循环,循环变量i=word[0]='a';第2次循环,循环变量i=word[1]='b';第3次循环,循环变量i=word[2]='c';第4次循环,循环变量i=word[3]='d';遍历完word中的所有元素,循环结束 2.range()函数 range()函数用于生成整数序列。 通式:range(start,stop,step)。该序列的索引范围为[start,stop),步长为step。其中,start为起始值,默认值为0时可省略;step为步长,默认值为1时可省略;stop为终值,不可省略。如range(0,10,1)可省略为range(10)。 3.while循环 while语句: while循环在执行时,首先判断条件是否为真,若条件为真,执行一次循环体,再次判断条件是否为真,若仍为真,则再次执行循环体,直至条件为假时跳出while循环 while 循环格式: while <条件>: <循环体>    s=0  while s<10: s+=4  print(s) 第1次条件,s的值为0,s<10成立,执行循环体s=4; 第2次条件,s的值为4,s<10成立,执行循环体s=8; 第3次条件,s的值为8,s<10成立,执行循环体s=12; 第4次条件,s的值为12,s<10不成立,循环结束 4.转移和中断语句 continue:中断本轮循环的执行,进入下一轮新的循环的判断。 break:跳出整个循环结构。 5.循环嵌套 一个循环体内可以嵌套另一个循环,一般为双重循环,其循环总次数等于内外层次数之积。 学考要点3函数与模块 【必修1数据与计算第90~95页 指导意见第13~19页】 1.函数 (1)函数的定义 def 函数名(参数集合): <函数体> [return 函数值] def:关键字,定义声明;参数集合:调用函数所需传入的参数;return:返回,返回函数执行后的结果。例如: def add(a,b): c=a+b return c (2)函数的调用 调用函数时参数传递的方法: ①按位置依次传递:按照函数声明时的参数原有顺序依次进行参数传递。如area(3,4,5)。 ②参数赋值: 通过赋值语句实现参数传递(可改变原有顺序)。如Area(b=4,c=5,a=3)。 2.Python常见模块 Python包括了大量的模块,它们的功能涉及系统管理、科学计算、图形处理等各个领域。例如:用于实现部分操作系统功能的os模块,与时间处理有关的time模块,可以实现科学计算、数据可视化的numpy和matplotlib,用于多媒体开发和游戏软件开发的pygame模块,支持图形处理的tkinter等。 模块导入的方法: 方法一 import语句 import <模块1>,<模块2>,<模块3> 导入某个模块,就可以引用它的所有公共函数 故该方式调用模块中函数的形式:<模块名>.<函数名> 方法二 from­import语句 from <模块名> import <函数名> 导入某个模块中的特定函数,就可以引用该函数 故该方式调用函数形式:<函数名> (1)math模块 名称 含义 math.e 自然常数e math.pi 圆周率π math.ceil(x) 对x向上取整 math.ceil(1.3)=2 math.floor(x) 对x向下取整 math.floor(1.3)=1 math.pow(x,y) 指数运算,得到x的y次方 math.pow(2,3)=8 math.log(x) 对数运算,默认基底为e math.sin(x) 正弦函数 math.cos(x) 余弦函数 math.tan(x) 正切函数 math.degrees(x) 弧度转换成角度 math.radians(x) 角度转换成弧度 注意:ceil()、floor()、 int() 的对比 ceil(1.5)=2     floor(1.5)=1     int(1.5)=1 ceil(-1.5)=-1   floor(-1.5)=-2   int(-1.5)=-1 ceil():向上取整     floor():向下取整    int():截取整数 (2)random模块 例如:import random       #导入random模块 a=random.random()*10 #[0,10)范围内的实数 b=random.uniform(0,10) #[0,10]范围内的实数 名称 含义 random.random() 随机生成一个[0,1)范围内的实数 random.uniform(a,b) 随机生成一个[a,b]范围内的实数 random.randint(a,b) 随机生成一个[a,b]范围内的整数 random.choice(seq) 从序列的元素中随机挑选一个元素 random.sample(seq,k) 从序列中随机挑选k个元素 random.shuffle(seq) 将序列的所有元素随机排序 c=random.randint(0,10) #[0,10]范围内的整数 random.choice(range(10)) #[0,9]中随机挑选一个整数 random.sample(range(10),3) #[0,9]中随机挑选三个整数 c=[0,1,2,3,4] random.shuffle(c) #对整数序列c进行重新排序 (3)Image模块 Image模块是PIL库(Python Imaging Library )中的重要模块,引用它可以完成对图像的一些常用操作,比如获取图像尺寸和像素颜色、旋转图像或改变图像格式等。 numpy模块是将图像每个像素的RGB值以矩阵形式存储。 matplotli模块是根据调整后的像素生成新的图像。 ①导入模块 from PIL import Image import numpy as np import matplotlib.pyplot as plt ②打开图像并转换成数字矩阵 img=np.array(Image.open(”lena.jpg”).convert(”L”)) ③调整每个像素的RGB值 rows,cols=img.shape     #图像尺寸分别赋值 for i in range(rows):      #依次取每个像素的坐标 for j in range(cols): if img[i,j]>128:    #像素值大于128,赋值1,否则为0    img[i,j]=1 else: img[i,j]=0 ④生成新的图像并显示 例1 有如下Python程序段,若想要测试其所有分支程序代码是否正确,x=int(input('请输入整数x: ')) if x>10: y=x**2 elif x>0: y=10*x else: y=0 print(y) 下列数据最恰当的一组是(   ) A.0,10 B.11,2,-1 C.-2,2,6 D.12,100,-100 【解析】 三分支结构,分为大于10、大于0且小于或等于10、小于或等于0三种情况。选项B的三个数据分别对应三个分支的条件,符合测试要求。选项B正确。 B 变式 用Python算法控制结构描述“您所在街道25分钟后小雨,50分钟后雨停”,设t为距离天气预报发布时间的间隔(单位:分钟),下列选项正确的是(   ) A.if t>50: print(”雨停”) elif t>25: print(”小雨”)          B.if t>50: print(”雨停”) A else: print(”小雨”) C.if t>25 and t<=50: print(”小雨”) else: print(”雨停”)        D.if t>25: print(”小雨”) elif t>50: print(”雨停”) 【解析】 选项A,该算法描述为:距离当前时间t>50,雨停;距离当前时间25<t<=50,小雨。该算法与题干自然语言描述的算法符合,选项正确。 例2 执行下列Python程序段后, a=[1,3,4,2,3] max=a[0] s=0 for i in range(1,len(a)): if a[i]>max:     max=a[i] s=s+max print(s) 变量s的值是(   ) A.15 B.13 C.12 D.7 【解析】 在循环过程中,查找最大值,并将最大值累加到s中。4次循环中max依次为3,4,4,4,选项A正确。 A 变式1 (2024·温岭中学学考模拟)有如下Python程序段: a=[3,2,1,-8,3,-2,8,6] s=t=a[0] for i in range(1,len(a)): if s>0: s+=a[i] else: s=a[i] if s>t: t=s print(t) 执行该程序段后,输出的结果是(   ) A.6 B.-10 C.15 D.33 【解析】 执行过程如下: C i — 1 2 3 4 5 6 7 a[i] — 2 1 -8 3 -2 8 6 s 3 5 6 -2 3 1 9 15 t 3 5 6 6 6 6 9 15 选项C正确。 变式2  (2024·浙江1月选考)数组元素a[0]至a[n-1]依次存放着n 个数据,现需要将元素a[n-1]插入在下标为x(0≤x<n-1)的位置。例如:n 为5,数组a 为[0,3,4,6,7],x 为2,插入操作后a 为[0,3,7,4,6]。实现该功能的程序段如下,方框中应填入的正确代码为( A ) temp=a[n-1] for i in range(n-2,x-1,-1): a[x]=temp A.a[i+1]=a[i] B.a[i-1]=a[i] C.a[i]=a[i+1] D.a[i]=a[i-1] 【解析】 算法实现的功能是将数组末尾元素a[n-1]移动到指定位置x。因此需要将下标位置范围为[x,n-2]区间内的元素整体向后移动一位,移位的方向是将前面的元素覆盖后面的元素,参与移位的元素最左侧为下标x,i的初始值为n-2位置,需要将n-1位置覆盖,选项A正确。 例3 下列表达式能够生成[10,99]范围内的随机整数的是(   ) A.random.randint(10,100)      B.random.choice(range(10,99)) C.int(random.random()*89)+10 D.int(random.random()*90)+10 【解析】 选项A,random.randint(10,100)产生10 和100 之间的任意一个整数,选项错误;选项B,random.choice(range(10,99)) 随机从10 和98 之间选择一个整数,选项错误;选项C,int(random.random()*89)+10 随机产生10 和98 之间的任意一个整数,选项错误。选项D正确。 D 变式1 脱氧核糖核酸(DNA)由两条互补的碱基链以双螺旋的方式结合而成。构成 DNA 的碱基共有 4 种,分别为腺嘌呤(A)、鸟嘌呤(G)、胸腺嘧啶(T)和胞嘧啶(C)。在两条互补碱基链的对应位置上,A 总是和 T 配对,G 总是和 C 配对。编写Python程序实现如下功能: 随机产生一条单链上的碱基序列,输出其对应的互补链上的碱基序列。 import random DNA=['A','G','T','C'] s='' for i in range(20): ①________ print(s) match={'A':'T','T':'A','G':'C','C':'G'} t='' for i in range(20): ②________ print('互补链:',t) 横线处应填入的代码为(   ) A.①s=random.choice()+s    ②t=t+match[i] B.①s=s+random.choice(DNA)  ②t=t+match[s[i]] C.①s=s+random.choice()     ②t=t+match[s[i]] D.①s=random.choice(DNA)+s  ②t=t+match[i] B 【解析】 ①随机产生第1条碱基链,函数choice()从序列的元素中随机挑选一个元素,需要有参数;②利用字典进行匹配,字符串使用下标提取。选项B正确。 变式2  (2024·长兴中学学考模拟)有如下Python程序段: import random a=[0]*6 for i in range(6): a[i]=random.randint(1,5)*2+1 i=0 while i<5: if a[i]>a[i+1]: a[i],a[i+1]=a[i+1],a[i] else: a[i]+=1 i+=1 print(a) 执行该程序段后,列表a 的值可能是(   )  A.[2,5,10,10,10,9] B.[3,8,7,13,3,9] C.[8,12,3,5,3,11] D.[6,10,9,7,10,8] C 【解析】 列表a 的各元素的初值范围为[3,5,7,9,11],循环遍历。若当前数大于后数,则交换;若当前数不大于后数,则当前数+1。所以程序执行后,若该数还是3,5,7,9,11,则该数是与后数交换所得;若该数为4,6,8,10,12,则该数的原数大于后数,为加1 所得。所以不可能出现2和13,故选项A、B 错误。选项D 的第三个数字9 不合理,故选项D 错误。选项C 的原始数可能为7,11,11,3,5,3,程序执行后可得选项C的结果,故选项C 正确。 例4 有如下Python程序段: def count(a,i): for j in range(i+1,len(a)): if a[j]<a[j-1]: return j-i else: return len(a)-j a=list(map(int,input().split()))#将输入的字符串按照空格符进行分割后转换为整型列表 b=[1]*len(a) for i in range(len(a)-1): b[i]=count(a,i) print(b) 执行该程序段后,若输入的数据为“1 2 2 4 7 6”,则b[1]的值为(   ) A.1 B.4 C.3 D.2 【解析】 i=1,调用函数count(a,1),函数中j的范围是[2,len(a)-1],j=2时a[2]==a[1],执行return len(a)-j=4,选项B正确。 B 变式  (2024·新昌中学学考模拟)有如下Python程序段: def fun(a,b): n=min(len(a),len(b)) for i in range(n): if a[i]>b[i]: return a if a[i]<b[i]: return b if len(a)>len(b): return a else: return b print(fun(”123”,”23”)) 执行该程序段后,输出的结果是(   ) A.a B.b C.123 D.23 【解析】 在函数中按顺序执行语句,先执行循环语句,再执行分支语句。在循环中逐个比较字符,a[0]<b[0],执行return b,函数结束,选项D正确。 D # $$

资源预览图

Python程序实现复习课件-2024-2025学年浙江省高中学业水平考试信息技术总复习
1
Python程序实现复习课件-2024-2025学年浙江省高中学业水平考试信息技术总复习
2
Python程序实现复习课件-2024-2025学年浙江省高中学业水平考试信息技术总复习
3
Python程序实现复习课件-2024-2025学年浙江省高中学业水平考试信息技术总复习
4
Python程序实现复习课件-2024-2025学年浙江省高中学业水平考试信息技术总复习
5
Python程序实现复习课件-2024-2025学年浙江省高中学业水平考试信息技术总复习
6
相关资源
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。