2023-2024学年高一下学期浙教版(2019)必修一 3.2 Python语言程序设计

2024-08-07
| 13页
| 144人阅读
| 0人下载

内容正文:

3.2 Python语言程序设计 一、选择题 1.运行以下Python代码的结果是(   ) s="" for i in range(1,4):     for j in range(1,i+1):         s=s+" "+str(i+j)     print(s)     s=""   空字符串 A. 2 2  4 4  6  8 B. 2 3  4 5  6  7 C. 2 3  4 4  5  6 D. 2 2  3 4  5  6 A.A B.B C.C D.D 2.以下哪个选项不是Python中的逻辑运算符(   ) A.and B.or C.not D.xor 3.在编程中,使用分支结构可以有效地处理以下哪种情况(   ) A.循环计数 B.条件判断 C.数据存储 D.内存管理 4.以下关于元组的描述,错误的描述是(   ) A.元组的元素可以是整数、字符串、列表等Python支持的任何类型 B.与列表一样,元组也有append()、insert()函数 C.元组是不可变序列 D.元组的访问和处理速度比列表快 5.执行以下代码,其结果为(   ) n = 10 sum = 0 number = 1 while number <= n:     sum = sum + number     number += 1 print(sum) A.0 B.45 C.55 D.66 6.下列对count()、index()、find()方法描述正确的是(   ) A.count()方法用于统计字符串里某个字符出现的次数 B.find()方法检测字符串中是否包含子字符串str,如果包含子字符串返回开始的索引值,否则会报一个异常 C.index()方法检测字符串中是否包含子字符串str,如果str不存在返回-1 D.以上都错误 7.有如下Python程序段: s=input() t = "" for i in range(len(s)):     a=s[i]     if a>="0" and a<="9":         t=t+a     elif a=="!":         t=""     elif a!="" and t!="":         print(t) 执行该程序段时,输入“12+34=46!=789ok”(不包括双引号),则程序执行后输出的结果是(   ) A B C D 12 12 12 12 1234 34 1234 1234 123446 46 789 123446 123446789 789 789 789 A.A B.B C.C D.D 8.有如下Python程序段: import random a=[random.randint(2,5)] i=0 while i<=3:     x=random.randint(1,5)     if x<=a[i]:         a.append(x)     else:         i-=1     i+=1 print(a) 执行该程序段后,列表a中各元素的值可能是(   ) A.[6, 3, 1, 1, 1] B.[2, 2, 3, 4, 4] C.[2, 1, 2, 5, 3] D.[5, 2, 2, 2, 1] 9.在Python语言中,下面程序段运行结果是(  ) a=1 s=0 for i in range(1,5): a=a*i s=s+a print(s) A.0 B.15 C.33 D.120 10.在Python语言中,下面程序段运行结果是(  ) n=36 s=0 for i in range(2,n): if n%i==0: s=s+1 print(s) A.0 B.7 C.36 D.54 11.已知a=3,b=4,c=5,则下列Python表达式的结果与其他三项不同的是(    ) A.a>b or b<c and c>a B.not a%2==b%2 C.int(a*c//b)!=a D.c>=a<=b 12.有如下Python程序段: x=12.78 y=-37.53 x=int(x)+abs(y) y=x+y x=x-y print(x) 执行上面Python程序段,输出结果是(   ) A.49.53 B.37.53 C.12.0 D.87.06 13.象限是平面直角坐标系(笛卡儿坐标系)中横轴和纵轴所划分的四个区域,每一个区域叫作一个象限。象限以原点为中心,x,y轴为分界线,原点和坐标轴上的点不属于任何象限。某同学根据输入的坐标点(x.y)来判断该坐标点的位置所在,以下实现该分类的据Python程序段中正确的是(    ) A. if x==0 and y==0:     result="原点" if x==0 or y==0:     result="数轴" if x!=0 and y!=0:     result="象限" B. if x==0 or y==0:     result="数轴" elif x==0 and y==0:     result="原点" else:     result="象限" C. if x!=0 and y!=0:     result="象限" elif x==0 or y==0:     result="数轴" else:     result="原点" D. if x!=0 and y!=0:     result="象限" if x==0 and y==0:     result="原点" elif x==0 or y==0:     result="数轴" A.A B.B C.C D.D 14.运行以下Python程序,结果为(   ) for i in range(5):     for j in range(i):         print(“*”,end=“”)     print() A. ***** ***** ***** ***** ***** B. ***** C. * * * * * D. * ** *** **** A.A B.B C.C D.D 15.若列表d已经存储10个数据,现采用选择排序对这列数据进行非递增次序排序。其中第一遍加工整理的算法设计如下,填充横线部分,正确的语句是(   ) k=1 for i in range(2,11):     if :         k=i         switch(d[k],d[k—1]) A.d[i]>d[k] B.d[i]<d[k] C.k>i D.i>k 16.有如下Python程序段: matrix=[[1,1,1,1],[2,2,2,2],[3,3,3,3],[4,4,4,4]] k=int(input()) tot=0 for i in range(4):     for j in range(4):         if i+j=k:             tot+=matrix[i][j] print(tot) 若输入2,则输出为(   ) A.12 B.10 C.8 D.6 17.执行以下Python程序后,列表b的值是(   ) a=[[4,4,34,37],[3,12,2,6],[5,17,9,11]];b=[] for i in range(3):     for j in range(4):         if i < j:             b.append(a[i][j]) A.[4,4,34,37,12,2] B.[4,34,37,2,6,11] C.[4,3,12,5,17,9] D.[4,34,37,3,6,11] 二、填空题 18.填空题:在Python中,使用 可以创建一个函数。 19.在Python中,使用 语句可以实现条件判断。 20.用Python编写程序完成横线处求解鸡兔同笼问题,已知有56只头,160只脚,求鸡兔各有多少只?     定义变量i为鸡的只数     for i in range(1,56,1):         :           print(i)           print((160-i∗2)/4) 21.有如下Python程序段: a=[1,1,2,3] b=a*2 print(b) 执行后,输出的结果为 。 22.在python中,变量的命名需遵循一定规则:①必须 以或 开头,后面可以是字母,数字或下划线;②区分大小写;③不能使用 。 三、判断题 23.在定义函数时,某个参数名字前面带有两个*符号表示可变长度参数,可以接收任意多个关键参数并将其存放于一个字典之中。( ) 24.如果在函数中有语句 return 3,那么该函数一定会返回整数3。( ) 25.已知A和B是两个集合,并且表达式A<B的值为False,那么表达式A>B的值一定为True。( ) 26.下列Python程序段运行结束后,赋值语句sum= sum+i 共被执行了9次。( ) sum=0 for i in range(1,20):     if i%2==0:         sum=sum+i print(sum) 27.Python是解释型语言,翻译一行就执行一行。( ) 四、操作题 28.小张使用Python的Flask Web框架编写“校友查询系统”。用户使用浏览器输入http:/192.168.10.88:8000进入系统,在校友姓名处输入校友的姓名,点击“查询”按钮,将从数据库中获取该校友相关信息。查询界面如下图所示: 代码如下: from flask import Flask,render_template               # 导入 Flask 库 app=① @app.route('/') def index():    # 显示系统主页相关信息,代码略 @app.route('/cx',method=咱'GET','POST'暂) def cx():    # 根据输入的校友姓名查询相关信息,代码略    return render_template('xyinfo.html',txt=data) if __name__=='__main__': app. run(② ,③ ) (1)为实现上述功能,请完善画线处的代码。 ① ② ③ (2)下列有关该系统的描述,正确的是( ) A.将客户端输入的校友姓名传递给服务器,本系统中只采用POST方式 B.查询校友信息的页面的URL地址未知 C.无法通过程序修改该网络应用程序的端口号 D.显示校友信息的模板是xyinfo.html 试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.C 【详解】本题考查程序设计相关内容。分析程序段,其运行过程如图所示:。故本题答案是C选项。 2.D 【详解】本题Python逻辑运算符。Python中的逻辑运算符包括 and、or 和 not,但不包括 xor。xor 是一种位运算符,而不是逻辑运算符。故选D。 3.B 【详解】本题考查Python基础。 分支结构(如if-else语句)的主要用途是根据条件执行不同的代码块。这种结构非常适合于需要根据不同条件做出不同响应的场景。条件判断可以基于任何可以计算为布尔值(真或假)的表达式,如比较运算符的结果、逻辑运算符的结果等。故正确答案为:选项B。 4.B 【详解】本题考查Python基础。 与列表一样,元组也有append()、insert()函数:这是错误的。元组是不可变的,这意味着一旦创建,就不能更改其内容(即不能添加、删除或更改其中的元素)。因此,元组没有提供如append()、insert()等用于修改序列内容的函数。故正确答案为:选项B。 5.C 【详解】本题考查Python基础。 该程序的功能是累加1到10的和到变量sum,故sum=1+2+3+4+5+6+7+8+9+10=55。正确答案为:选项C。 6.A 【详解】本题考查Python函数的应用。count()方法用于统计字符串里某个字符出现的次数;find()函数可以在字符串中查找指定字符或子串的位置,如果找到则返回该字符或子串在整个字符串中的下标,否则返回-1;index()函数,如果不存在会报异常。故选A。 7.C 【详解】本题考查Python基础。 本题程序的功能是将字符串中的数字拼接在t中,若遇到字符“!”,则清空字符串t,若遇到其他字符且a、t均不为空时,则输出字符串t的内容,因此正确答案为:选项C。 8.D 【详解】本题考查Python基础。 本程序的功能是生成5个随机整数,使得后面生成的随机整数均不大于它前面的数,第1个随机整数的范围为[2,5],后面4个随机整数的范围为[1,5],因此正确答案为:选项D。 9.C 【详解】本题考查Python基础。 该程序功能为:遍历产生1到4的数赋值给变量i,每次累乘i到变量a,累加a到变量s。故s=1+2+6+24=33。故正确答案为:选项C。 10.B 【详解】本题考查Python程序。首先,n被初始化为36,s初始化为0。然后通过for循环从2迭代到35。对于每个i,判断36是否能被i整除,如果能整除,即n%i==0,则s加1。36能被2、3、4、6、9、12、18整除,共7个数,所以s最终的值为7。故答案为:B。 11.C 【详解】本题考查Python表达式。选项A:a>b为假,b<c and c>a为真。逻辑运算中,or只要有一个为真结果就为真,and只有两个都为真结果才为真。所以表达式的结果为真。选项B:a%2==1,b%2==0,所以a%2==b%2为假,not取反后结果为真。选项C:a*c//b=3*5//4=3,int(a*c//b)=3,a=3,所以int(a*c//b)!=a为假。选项D:c>=a为真,a<=b为真,所以c>=a<=b为真。故答案为:C。 12.B 【详解】本题考查Python基础。 int(12.78)=12,abs(-37.53)=37.53,则x=12+37.53=49.53→y=49.53-37.53=12→x=49.53-12=37.53 故正确答案为:选项B。 13.D 【详解】本题考查Python基础。 根据定义,(0,0)是原点,即if x==0 and y==0表示原点;(0,y)或者(x,0)分别表示y轴与x轴,即if x==0 or y==0且x与y不同时为0表示数轴。A选项,x==y==0时,第1个和第2个if均成立。故正确答案为:选项D。 14.D 【详解】本题考查Python基础。 外循环i的取值为0、1、2、3、4。内循环根据i的值输出,功能为第i行输出i个星号。故正确答案为:选项D。 15.A 【详解】本题考查Python程序。k初始值为1,假设d[1]是当前最大元素。遍历从2到10的元素,当d[i]大于d[k]时,说明找到了更大的元素,更新k的值为i,然后交换d[k]和d[k-1]的位置。故答案为:A。 16.D 【详解】本题考查Python程序。程序的功能是计算二维列表matrix中满足条件i+j=k的元素之和,其中k是用户输入的整数。解析如下:给定二维列表matrix,每个子列表都包含相同的四个整数。用户输入一个整数k。初始化变量tot为0,用于累加满足条件的元素之和。使用嵌套循环遍历matrix的每个元素:外层循环i控制行索引。内层循环j控制列索引。判断条件i+j==k,如果成立,则将matrix[i][j]的值加到tot中。最后输出变量tot的值,即满足条件i+j=k的元素之和。若输入2,根据题目的计算,满足条件的元素有(0,2),(1,1),(2,0),它们分别对应的值是1,2,3,因此最终的输出是1+2+3=6。故答案为:D。 17.B 【详解】本题考查Python基础。 该程序功能为:二维列表数据,当i<j时候,追加a[i][j]到空列表b中。(即可理解为二维表中,对角线元素以上的元素追加到空列表b中,因为对角线以上的元素索引的特点为i>j)。故可知正确答案为:选项B。 18.def 【详解】本题考查Python函数的创建。在Python中,使用def关键字可以创建一个函数。函数定义的基本语法是def 函数名(参数):,然后在下一行缩进的代码块中编写函数体。 19.if 【详解】本题考查Python分支结构的描述。在Python中,条件判断可以使用 if 语句来实现。if 语句用于根据条件的真假来执行不同的代码块。可以结合 elif 和 else 语句来处理多种情况。 20.if  i ∗ 2+(56-i)∗ 4==160 【详解】本题考查Python程序设计相关内容。本题描述的是鸡兔同笼问题,假设鸡的数量为i,则兔的数量为56-i,两者需要满足i ∗ 2+(56-i)∗ 4==160,才符合题目要求,程序段缺少该条件的判断,故本题答案是:if i ∗ 2+(56-i)∗ 4==160。 21.[1,1,2,3,1,1,2,3] 【详解】 本题考查Python列表相关内容。语句b=a*2将列表a重复2遍赋值给b,列表b为[1,1,2,3,1,1,2,3]。故本题答案是:[1,1,2,3,1,1,2,3]。 22. 字母 下划线 保留字 【详解】本题考查Python变量的命名。在python中,变量的命名需遵循一定规则:①必须字母以或下划线开头,后面可以是字母,数字或下划线;②区分大小写;③不能使用保留字。 23.正确 【详解】本题考查Python基础。 在Python中,定义函数时参数名字前面带有两个*符号(例如,**kwargs)确实表示该函数可以接受任意数量的关键字参数(keyword arguments),并将这些参数存储在一个字典中。这种参数被称为可变关键字参数。这种机制在编写需要高度灵活性的函数时非常有用,因为它允许调用者传递任意数量的关键字参数,而函数内部可以以一种统一的方式处理这些参数。故正确。 24.错误 【详解】本题考查Python基础。 题目中的说法过于绝对。在Python中,如果在这个 return 语句之前遇到另一个 return 语句,那么这个函数不一定会返回整数3。故错误。 25.错误 【详解】本题考查Python集合数据类型的描述。已知A和B是两个集合,并且表达式A<B的值为False,那么表达式A>B的值不一定为True,也有可能A=B。故表述错误。 26.正确 【详解】本题考查Python程序设计相关内容。分析程序段,由条件判断语句i%2==0可知,只有当列表数值为偶数时才执行求和语句,而列表1-19之间的偶数有9个,那么赋值语句 sum= sum+i 共被执行了 9 次。故本题答案是:正确。 27.正确 【详解】本题考查Python语言基础知识。Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。Python程序当运行时,它会逐行执行每个代码行。故本题答案是:正确。 28. Flask(__name__) host='172.168.10.88' port=8000 D 【详解】本题考查Python程序设计相关内容。 (1)①处代码是创建一个Flask应用程序实例,‌并将其名称设置为当前模块的名称或包的名称,在Flask中,‌_name_是一个特殊的内置变量,‌代表当前模块的名称或包的名称,通过将_name_作为参数传递给Flask类,‌可以确定应用程序的根目录,‌从而找到静态文件夹和模板文件夹等资源。‌故此处答案是:Flask(_name_)。由“用户使用浏览器输入http:/192.168.10.88:8000进入系统”知,host='172.168.10.88',port=8000,故②处答案是:host='172.168.10.88',③处答案是:port=8000。 (2)本系统表单通过POST或GET将数据传送给服务器;根据程序可知,校友查询信息页面的URL是http:/192.168.10.88:8000/cx,地址已知;可以通过修改run方法中的port参数值修改默认的Web应用程序的端口号;render_template方法的第一个参数就是网页的模板文件:xyinfo.html。故本题答案是:D。 答案第1页,共2页 答案第1页,共2页 学科网(北京)股份有限公司 $$

资源预览图

2023-2024学年高一下学期浙教版(2019)必修一 3.2 Python语言程序设计
1
2023-2024学年高一下学期浙教版(2019)必修一 3.2 Python语言程序设计
2
2023-2024学年高一下学期浙教版(2019)必修一 3.2 Python语言程序设计
3
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。