3.2Python语言程序设计同步作业2024—2025学年高中信息技术浙教版(2019)必修1

2024-08-14
| 15页
| 219人阅读
| 0人下载

内容正文:

3.2 Python语言程序设计 一、选择题 1.有如下Python程序段:    a=[2,1,6,1,6,5,3,6,4,3,6,4,5,5,3]    dic={}    for i in a:        if i not in dic:           dic[i]=1        else:           dic[i]+=1 执行该程序段后,dic[3]的值为(    ) A.1 B.2 C.3 D.4 2.python 表达式 256 % 10 // 2 * 5 的值是 (    ) A.15 B.6 C.0 D.256 3.有Python程序段: a=[1,2,3,5,7,12] c=0 for i in range(2,6): if a[i-1]+a[i-2]= =a[i]: c+=1 print(c) 执行该程序段后,输出结果是(    ) A.1 B.2 C.3 D.4 4.s="True",此时 s 的类型是(   ) A.整数 B.浮点数 C.字符串 D.布尔值 5.如图有可视化界面程序中的jiemi()函数中的for循环改为while条件循环: 下列选择正确的是() A.用while循环时,运算速度降低了 B.用while循环时,运算速度是提高了 C.用while循环时,运算速度没变 D.再将i=i+1改为i+=1,运算速度没变化 6.在Python IDLE编辑器中书写正确的表达式(   ) A.b**2-4ac B.1/2gt2 C.pi*r^2 D.2*pi*r 7.如下程序段 m = 50 n = 125 r=n while r!=0 :    r = m % n    m = n    n = r print (m) 执行后,程序将输出(  ) A.50 B.125 C.25 D.0 8.有如下Python程序段: import random a=["A"];s="";i=0 while len(a)>0 and i<=10: m=random.randint(0,10) if m % 2==0: a.append(chr(ord(a[-1])+1)) else: s=s+a.pop()#pop()函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 i+=1 print(s) 执行完上述程序后,输出结果不可能是(   ) A.A B.ABC C.FEDCBA D.BDE 9.有如下Python程序: a=[0,20,23,23,24,24,31,48,49,73,75] key=int (input ()) c=0;i,j=1,10 while i<=j:    m=(i+j)//2    if a[m]<=key:       i=m+1    else:       j=m-1    c+=1 print (c) 若程序运行后,输出的结果是3,则输入的key可能是(    ) A.20或73 B.24或49 C.23或24 D.23或49 10.有如下Python程序段 import pandas as pd data=[["小嘉","男",97],["小浙","男",89],["小温","女",98],["小华","女",89],["小杭","男",99]] df=pd.DataFrame(data,columns=["姓名","性别","成绩"]) 下列选项左侧语句与右侧输出结果不一致的是 A. print(df.groupby("性别",as_index=False).mean()) 性别 成绩 女 93.5 男 95.0 B. print(df[df["成绩"]>97]) 姓名 性别 成绩 2 小温 女 98 4 小杭 男 99 C. print(df.sort_values("成绩")) 姓名 性别 成绩 1 小浙 男 99 3 小华 女 89 0 小嘉 男 97 2 小温 女 98 4 小杭 男 99 D. print(df.drop(2)) 姓名 性别 成绩 0 小嘉 男 97 1 小浙 男 89 3 小华 女 89 4 小杭 男 99 A.A B.B C.C D.D 11.有如下Python 程序段: s=input() y="" for i in range(len(s)):    c=s[i]    if c>="A" and c<="Z":       c=chr(ord(c)+3)    y=c+y print(y) 运行上述程序,若输入的s内容为“A1b2C3”,则显示的是:(  ) A.A1b2C3 B.D1b2F3 C.3F2b1D D.3C2b1A 12.定义如下函数: def fn(n,numl,num2):     if n==1:         return numl     return fn(n-1,num2,numl+num2) 下列说法正确的是(    ) A.该算法的时间复杂度是O(n) B.fn(10,1,2)的效果等价于1+2+3…+10 C.fn(5,1,1)的结果是 22 D.fn(1,1,1)与fn(1,1,2)的返回结果不同 13.有如下Python程序段: from random import randint from math import sqrt a=[0,0,0,0,0] for i in range(5):        a[i]=randint(1,5)*2 n=0 while n<5:        for i in range(4,n,-1):            if a[i] < a[i-1] and int(sqrt(a[i]))!=sqrt(a[i]):                a[i],a[i-1]=a[i-1],a[i]        n+=1 print(a) 运行该程序段,输出的结果不可能是(    ) A.[2,8,10,10,4] B.[6,8,10,4,10] C.[2,4,8,10,10] D.[6,8,6,4,8] 14.有如下Python程序段: a=[] h=-1 for i in range(4): t=int(input()) a.append([t,h])  #为列表a添加一个新元素 h+=1 while a[h][1]!=-1: print(a[h][0],end=″→″) h=a[h][1] 执行该程序段,依次输入1、2、3、4之后,输出的是(    ) A.″1→2→3→4→″ B.″1→2→3→″ C.″4→3→2→1→″ D.″4→3→2→″ 15.在 Python 语言中,运行以下程序段后,输出的结果是(   ) L= [ 'a', 'b','c','d'] del (L [1]) print (L) A.['b','c','d'] B.['a','b','c'] C.['a', 'b','d'] D.['a','c','d'] 16.有如下 Python 程序,程序执行,输入数据 k 之后输出的结果不正确的是( ) L=[5,8,7,8,2,6,4,6,8,9] k=int(input("请输入 k 值:")) j=0 for i in range(10):     if L[i]<=k:         L[j]=L[i]         j=j+1 print(L[2]) A.k=5 输出:5 B.k=6 输出:6 C.k=7 输出:2 D.k=8 输出:7 二、填空题 17.程序代码如下,则其中 的作用是( )   18.a=3,执行语句print (float(a)),则输出结果为( ) 19.int(2.9)的值是 ,17//2的值是 。 20.以下流程图是一个算法的描述,该算法是对A、B值进行判断,如果A不大于B,则A与B的值互换,最后输出A,B的值。    (1)根据题目中对算法的描述,则流程图中①处填写 。 (2)如果用Python语言实现“输出A,B的值”,则应该写为 。 21.创建GUI应用程序的方法:先 。如“from tkinter import *” 导入tkinter模块。然后运用相应代码 。如: 、 、 、 。 三、判断题 22.Python表达式'37'+str(21)的运行结果是'58'。( ) 23.print(1+"2")的输出结果是"3"( ) 24.实时获得鼠标的状态并对鼠标单击做出正确的响应,只有不断地进行监听、更新游戏状态、重绘屏幕三个步骤的操作。    ( ) 25.在Python语言中,数据的输出是通过output()函数实现的。( ) 四、操作题 26.小明从网站上收集了 2018 年主要城市气候情况相关数据,数据集格式如图 1 所示 图 1 为了分析主要城市气候情况数据,小明利用 python 绘制反映各城市平均气温的垂直柱形图,如图 2所示。 图 2 (1)  部分程序代码如下所示,补全①②划线处的代码。 import pandas as pd import matplotlib.pyplot as plt from matplotlib.pyplot import MultipleLocator    #MultipleLocator 类用于设置刻度间隔 plt.rcParams["font.sans-serif"]=["simHei"] df=pd.read_csv("qihou.csv",encoding="gbk")  #读取'qihou.csv'文件中的数据,创建 DataFrame 对象 df#显示年平均气温最高的城市 df_sort=df.sort_values("年平均气温(℃)",ascending=False) print(df_sort.head(10))#下划线处 df1=df_sort.head(10)#下划线处 plt.figure(figsize=(10,5)) x=df1["城市"] y=df1["年平均气温(℃)"] #绘制柱形图 plt.title("年平均气温最高的城市的 10 个城市") plt.xlabel("城市") plt.ylabel("年平均气温(℃)") #显示图例 plt.show() (2)若要制作平均气温最低的 10 个城市的柱形图,则程序下划线处的代码应该改为     (3)若要删除 df 中的“City”列数据,则代码应为:    试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.C 【详解】本题考查Python基础。 程序的功能为利用字典dic统计列表a中每个元素出现的次数,3出现了3次。故正确答案为:选项C。 2.A 【详解】本题主要考查Python表达式的运算。256 % 10 // 2 * 5=6//2*5=3*5=15,故本题选A选项。 3.C 【详解】本题考查Python程序设计相关内容。分析程序段,i值从2开始到5结束,每次均判断a[i-1]+a[i-2]= =a[i]是否成立,其中,i=2、3、5时成立,执行c+=1,结果为3。故本题答案是C选项。 4.D 【详解】本题主要考查Python数据类型。布尔值是逻辑值,只有两种:真(True)、假(False),s="True",此时 s 的类型是布尔值,故本题选D选项。 5.A 【详解】本题主要考查算法流程图及Python程序实现。分析程序可知,使用for循环中,当i等于p时,才执行d2=datetime.datetime.now(),d=d2-d1;而while循环中,当i不等于p时,执行d2=datetime.datetime.now(),d=d2-d1(执行次数明显多于前者),故用while循环时,运算速度降低了,故本题选A选项。 6.D 【详解】本题主要考查Python表达式知识点。书写表达式时运算符号不能省略,+加、-减、*乘、**幂、/除、//整除、%取模,A、B、C正确的表达式分别是b**2-4*a*c,1/2*g*t**2,pi*r**2,2*pi*r是正确的表达式,故本题选D选项。 7.C 【详解】本题主要考查Python程序的执行。分析程序可知,该程序用于求m与n的最大公约数,m=50,n=125,则m与n的最大公约数是25,故本题选C选项。 8.B 【详解】本题考查Python程序。在a.append(chr(ord(a[-1])+1))中,新的元素是在当前列表a的最后一个元素之后加入的,所以元素的顺序逐渐增加。每次循环中,如果随机数m是偶数,就会执行该语句,从而增加一个新的字母。现在,假设在循环过程中有两次增加操作,生成了"B"和"C",此时列表a可能为["A","B","C"]。在s=s+a.pop()中,a.pop()将从列表a的最后一个元素开始弹出。因此,执行两次s=s+a.pop()会先弹出"C",再弹出"B",最后弹出"A"。所以输出结果是"CBA"而不可能是"ABC"。故答案为:B。 9.B 【详解】本题主要考查二分查找及Python程序实现。该二分查找用二叉树表示如下,变量c表示查找的深度,由图可知,73和23有右子树,还会继续往下查找,因此c不可能为3,排除A、C、D选项,key值为20、24、49时,c值均为3,故本题选B选项。    10.A 【详解】本题考查Python程序pandas模块的应用。题干语句执行完,此时df是,执行语句print(df.groupby("性别",as_index=True).mean())在聚合过程中会因数据类型而报错,,因此不能得到右侧输出结果,其余选项均一致。故选A。 11.C 【详解】本题主要考查Python程序的执行。分析程序可知,当取到的字符是大写字母时,执行c=chr(ord(c)+3)即后移3个长度,其余字符不变。y=c+y,即将每次取到的字符插到最前面。字符"A"、"C"变为"D"、"F",因此输出的结果是 3F2b1D,故本题选C选项。 12.A 【详解】本题考查Python函数相关内容。A选项,该函数为递归函数,分析其执行过程,可知,时间复杂度为O(n),选项正确。B选项,该函数功能为计算斐波那契数列,不是计算1--10的和,选项错误。C选项,当n等于5时,计算的是斐波那契数列第5项(1、1、2、3、5...),其结果为5,不是22,选项错误。D选项,fn(1,1,1)与fn(1,1,2)运行结果相同,因第一个参数都是1,代入函数运行,均返回num1,即1。故本题答案是A选项。 13.D 【详解】本题主要考查Python程序的执行与调试。 a[i]=randint(1,5)*2,a[i]随机生成2、4、6、8、10,如果a[i]不为4,且满足a[i]<a[i-1],则交换a[i]与a[i-1],即程序执行后,a中的元素除了4以外,其余元素呈升序状态,选项D中,前三个元素并未呈升序状态,故输出的结果不可能是[6,8,6,4,8],故本题选D选项。 14.D 【详解】本题主要考查Python程序的执行。第一个for循环执行完,a=[[1,-1],[2,0],[3,1],[4,2]],第二个while循环从后往前依次输出,因为a[0,1]=-1,所以1不会输出,输出结果是″4→3→2→″,故本题选D选项。 15.D 【详解】本题考查的是Python列表操作。列表索引号从0开始,del (L [1])表示删除索引号为0的元素。L= [ 'a', 'b','c','d'],del (L [1])将列表中'b'元素删除。最后L= [ 'a', 'c','d'],故选D。 16.A 【详解】本题考查Python程序设计相关内容。分别将k值(5、6、7、8)带入程序段,分析其运行过程:A选项,列表L最终值为[5,2,4,8,2,6,4,6,8,9],L[2]值为4;B选项,列表L最终值为[5,2,6,4,6,6,4,6,8,9],L[2]值为6;C选项,列表L最终值为[5,7,2,6,4,6,4,6,8,9],L[2]值为2;D选项,列表L最终值为[5,8,7,8,2,6,4,6,8,9],L[2]值为7。BCD选项与结论相符,正确;A选项与结论不相符,错误。故本题答案是A选项。 17.换行 【详解】本题主要考查Python转义字符。“ ”表示换行,“\t”表示空四个字符,也称缩进。 18.3.0 【详解】本题主要考查Python数据类型。float() 函数用于将整数和字符串转换成浮点数,a=3,执行语句print(float(a)),则输出结果为3.0。 19. 2 8 【详解】本题考查Python表达式的运算。int() 函数用于将一个字符串或数字转换为整型。因此int(2.9)=2;//是整除运算符,因此17//2=8。 20. A<=B? print(A,B) 【详解】本题主要考查算法流程图及Python语言。①该算法是对A、B值进行判断,如果A不大于B,则A与B的值互换,最后输出A,B的值,故此次判断条件是A<=B?。②如果用Python语言实现“输出A,B的值”,输出函数是print(),则应该写为print(A,B)。 21. 导入模块 创建交互对象 矩形容器(Frame) 文本框(Entry) 命令按钮(Button) 文本标签(Label) 【详解】本题考查是GUI应用程序的创建。创建GUI应用程序的方法:先导入模块。如“from tkinter import *”导入thinter模块。然后运用相应代码创建交互对象。如:文本框(Entry)、命令按钮(Button)、文本标签(Label)、矩形容器(Frame)。 22.错误 【详解】本题主要考查Python字符串的操作。Python表达式'37'+str(21)的运行结果是'3721',故表述错误。 23.错误 【详解】本题考查数据类型相关内容。1为int类型,"2"为字符串类型,两者类型不一致,不能进行加法运算。故本题答案是错误。 24.对 【详解】本题考查的是鼠标响应。实时获得鼠标的状态并对鼠标单击做出正确的响应,也就不断地进行监听、更新游戏状态、重绘屏幕三个步骤的操作。题干中的说法是正确的。 25.错误 【详解】本题考查的知识点是Python语言中的输出语句。在Python语言中,实现数据的输出是使用print函数,故答案为错误。 26. plt.bar(x,y) plt.legend( ) tail(10) del df["City"] 【详解】本题主要考查Python程序的综合应用。①pyplot绘制垂直柱形图的函数是bar ( ) 。bar( )第一参数是横坐标值,第二个参数是纵坐标值。因此此处填写plt.bar(x,y)。②显示图例需要调用函数legend( ) ,因此此处填写plt.legend( )。③DataFrame对象返回前n个数据记录用head ( )函数,返回后n个数据记录用tail ( ) 函数。因此下划线处改为tail(10)。④ 删除数据列有两种。一种是drop ( )函数,但是不会改变DataFrame对象本身。一种是del,会改变DataFrame对象本身的数据结构。因此此处填写del df["City"]。 答案第1页,共2页 答案第1页,共2页 学科网(北京)股份有限公司 $$

资源预览图

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