试卷总分:100分
选择题 25题 50分
判断题 10题 20分
编程题 3题 30分
小明需要统计班级某次Python编程考试成绩在1~100分的学生人数,他想用range生成所有可能的分数值。以下代码正确的是?( )
体育测试要求记录每分钟跳绳次数,体育委员用range(0, 101, 5)生成计数节点。这个范围会包含哪些数?( )
元旦晚会需要编写从10到1的倒计时程序,正确的range表达式是?( )
小明计划在30天的月份内进行健身,从第1天开始每隔2天锻炼一次(即第1、4、7...天)。正确的range表达式是?( )
以下不属于jieba库分词的三种模式的选项是?( )
time库是常用的Python标准库,以下代码是简单获取时间的方法。运行该程序后的输出结果可能是?( )
import time localtime=time.asctime(time.localtime(time.time())) print('当前本地时间为:{}'.format(localtime))
小明编写猜数字游戏,需生成1到100之间的随机整数(包含1和100),正确的代码是? ( )
小明想用Python的math库计算“17个苹果分给4个小朋友,每人最多能拿到多少个完整的苹果?”。以下哪个代码能正确解决问题? ( )
某Python程序如下:
a=[1,2,3] b=[4,5,6] t=list(map(lambda x,y:(x,y), a,b)) print(t)
上述程序执行后的结果是? ( )
在Python中,已知列表a=[1,2,3],执行语句a[1:2]=[7,8,9]后,列表a为? ( )
t=['happy',[11,22,'33'],66] x=t[0][-2::-2]+t[1][2] print(x)
上述程序执行后的结果是?( )
某Python程序段如下:
c=['1314',(5,1,8),[10,20]] s=max(c[0]) for i in c: if max(i)>s: s=max(i)
上述程序执行后,输出s的值是?( )
d={'a':1,'b':2,7:3,'5':4} x=d['a'] y=d[7] z=d['5'] print(x+y+z)
程序段执行后,输出的结果是? ( )
在Python中,创建了一个字典d={'西瓜':45.6,'酸奶':8.9,'饼干':23.5,'果冻':15.9},以下语句能实现删除'酸奶'元素的是? ( )
平方数是某个整数的平方结果。例如,2的平方是4,3的平方是9等。下列哪个选项中的代码,可以生成从1到5的整数的平方数? ( )
小明期中考试的成绩保存在 ChengJi = (88, 92, 97)中,现在发现92分登记错了,要改成96,请选择正确选项里的代码帮他改正? ( )
小王正在编写一个程序,用于管理一个学校的课程安排。现在需要为班级1添加一门新课程"语文",并删除一门不再开设的课程"科学"。以下是他的代码:
KeCheng = {"数学", "科学", "英语"} KeCheng.add("语文") KeCheng.remove("科学") print(KeCheng)
请问这段代码的输出结果是? ( )
在Python中,运行下面代码的输出结果是?( )
text = "apple banana apple cherry banana" words = set(text.split()) print(len(words))
以下哪个方法可以将字符串中的所有字母转换为大写? ( )
执行以下Python代码后,输出的结果是? ( )
s = " PyThon5级! " result = s.strip().lower().find('thon') print(result)
执行下列Python代码的结果是? ( )
a = "3.1415926" b = 6 c = "<"
print("{0:{2}.{1}}".format(a, b, c))
Python表达式str(21/3)的结果是?( )
import random a=[random.randint(1,3)*2 for i in range(3)] print(a)
程序运行后,输出结果不可能是?( )
下列选项中,与列表推导式list1=[n**2 for n in range(6)]功能不相同的是?( )
求两位数之内能被4整除,或能被7整除的所有数,正确的列表推导式是? ( )
小明在Python中创建了一个range对象 r = range(5, 15, 2),试图通过 r.append(17) 向其中添加新元素。此操作会成功执行。( )
在使用 jieba 库进行中文分词时,jieba.cut 方法默认采用的是全模式,该模式会将句子中所有可能的词语都扫描出来,速度快但可能会产生大量冗余结果。( )
在Python中,对列表s=[1,2,3]执行语句s.append(s.pop(1))后,列表s变成[1,3,2]。( )
在Python中,执行以下语句,能成功创建一个字典。( )
>>> age=dict(lily=15,coco=14,john=14,coco=16) >>> age
生成器推导式具有惰性求值的特点,虽然生成器对象空间占用多,但是比列表推导式更高效,所以使用生成器对象的元素时,一定要将其转换为元组。( )
在Python中,运行下面的代码,输出的结果为{"Book1", "Book2", "Book3"}。( )
books = {"Book1", "Book2", "Book3", "Book4"} del_book = books.pop() print(del_book)
在Python中,这段代码的运行结果是{"Book1", "Book2", "Book3", ["Book4", "Book5"]}。( )
borrowed_books = {"Book1", "Book2", "Book3"} new_books = ["Book4", "Book5"] borrowed_books.add(new_books) print(borrowed_books)
Python表达式“Python2024”>"python"返回值为True。( )
在Python中,\n(换行符)、\t(水平制表符)和\\(单个斜杠)都是字符串的常用转义符。( )
小明想在变量a中存储26个小写字母,但他不想手动输入,可以使用列表推导式a=[chr(i+65) for i in range(26)]实现。( )
合并有序列表
现有两个列表中的数据已经分别升序排好,要求将两个列表合并到一个新列表中,最终结果依旧升序。例如两个有序列表为a=[11,25,64,75,88]和b=[10,33,46,50,90],最终合并到列表c中,结果为:[10, 11, 25, 33, 46, 50, 64, 75, 88, 90]
实现上述功能的Python程序如下,请在划线处填入合适的代码。
a=[11,25,64,75,88] b=[10,33,46,50,90] c=[0]*10 i=0 j=0 k=0 while ① : #当列表a或列表b中的数据未合并完,继续循环 if i==len(a): #当列表a中数据已经合并完,只需将列表b中的数据合并 ② j+=1 elif j==len(b): #当列表b中数据已经合并完,只需将列表a中的数据合并 c[k]=a[i] i+=1 elif ③ : #当列表a和列表b中的数据都未合并完,将较小值合并到列表c中 c[k]=a[i] i+=1 else: c[k]=b[j] j+=1 ④ #每合并完一个数据,列表c中的指针k往后走一步 print(c)
验证邮箱
小明用Python语言写了一个验证邮箱地址和密码是否符合要求的程序。邮箱地址,例如1a2b3c4d56@sina.com,“@”前面的字段叫用户名,“@”后面的字段叫域名。小明的验证程序要求邮箱地址长度不小于15位,同时用户名包含字母和数字。邮箱密码的长度不小于8位,要同时包含大写字母、小写字母以及数字。下面是小明写的程序代码,请你补全横线处的代码,实现前面描述的功能。
# 验证邮箱地址 email = input("请输入邮箱地址: ") DiZhi = False if ① and '@' in email and '.' in email: YongHuMing, YuMing = ② if YongHuMing and YuMing and '.' in YuMing: if any(char.isdigit() for char in YongHuMing) and any( ③ for char in YongHuMing): DiZhi = True # 验证密码 password = input("请输入密码: ") MiMa = False if len(password) >= 8: DaXie = any(char.isupper() for char in password) XiaoXie = any(char.islower() for char in password) ShuZi = any(char.isdigit() for char in password) if DaXie and XiaoXie and ShuZi: MiMa = True # 输出结果 if ④ : print("邮箱地址和密码格式均正确。") else: if not DiZhi: print("邮箱地址格式不正确。") if not MiMa: print("密码格式不正确。")
统计作品
小明为选出班级中平均分最高的参赛作品,编写Python程序,算法设计如下:
(1)5位评委对3个作品的评分数据存储在列表data中(数据由3位十进制数组成,第1位对应作品号,后2位对应作品得分,如“275”表示2号作品得分75)
(2)统计并输出3个作品的平均分(保留一位小数),选择平均分最高的作品为参赛作品,若最高平均分存在并列,则输出全部并列的最高平均分作品号。程序运行结果如下所示。
-------程序运行结果-------
作品 1 平均分为 78.0
作品 2 平均分为 82.2
作品 3 平均分为 82.2
平均分最高作品号是: [2, 3]
程序如下,请在划线处填入合适的代码:
data=[180,283,385,170,276,384,180,285,380,190,295,390,170,272,372] s={1:0,2:0,3:0} ans=[] max_zp=0 for c in data: zp= ① fs=c%100 ② for i in range(1,4): ③ print('作品',i,'平均分为',s[i]) if s[i]>max_zp: max_zp=s[i] for i in range(1,4): if ④ : ans.append(i) print('平均分最高作品号是:',ans)