赞
踩
2022-09 Python二级真题
分数:100
题数:37
测试时长:60min
一、单选题(共25题,共50分)
1. 运行以下代码,结果输出的是?(C)(2分)
means=['Thank','You']
print(len(means))
A. 8
B. 6
C. 2
D. 1
2. 下列语句中变量i取值范围是1~10的是?(D)(2分)
A. for i in range(11)
B. for i in range(1,10)
C. for i in range(0,10)
D. for i in range(1,11)
3.今天编程课的主要内容是字典的遍历。
已知字典dt={'a':[1,3,5],'b':[3,4,7],'c':[2,5,9]},老师要求用四种不同的方法遍历字典,都要获得如下结果
[1, 3, 5]
[3, 4, 7]
[2, 5, 9]
小程同学尝试写了四段程序,请你帮他检查一下哪个程序的打印结果不符合要求?(D)(2分)
A.
dt={'a':[1,3,5],'b':[3,4,7],'c':[2,5,9]}
ls=[]
for i in dt.values():
ls.append(i)
print(i)
B.
dt={'a':[1,3,5],'b':[3,4,7],'c':[2,5,9]}
ls=[]
for i in dt:
ls.append(dt[i])
for j in ls:
print(j)
C.
dt={'a':[1,3,5],'b':[3,4,7],'c':[2,5,9]}
ls=[]
for k in dt.keys():
ls.append(dt[k])
for j in ls:
print(j)
D.
dt={'a':[1,3,5],'b':[3,4,7],'c':[2,5,9]}
ls=[]
for k in dt.items():
print(k)
4. 执行以下代码后输出的结果是?(B)(2分)
d={1:'monkey',2:'panda',3:'bird',4:'fish'}
d[5]='sheep'
del d[3]
d[3]='dog'
print(d)
A. {1: 'monkey', 2: 'panda', 4: 'fish', 5: 'sheep', 3: 'cat'}
B. {1: 'monkey', 2: 'panda', 4: 'fish', 5: 'sheep', 3: 'dog'}
C. {1: 'monkey', 2: 'panda', 3: 'dog, 5: 'sheep', 4: 'duck'}
D. {1: 'monkey', 2: 'panda', 3: 'cat', 5: 'sheep', 4: 'duck'}
5. tp=(3,6,9,11),以下操作正确的是?(A)(2分)
A. x=tp[2]
B. x=tp(2)
C. tp[3]=12
D. tp(3)=12
6. 列表a=list(range(2,10)),下列选项中可以获取列表中最后一个元素?(B)(2分)
A. a[8]
B. a[7]
C. a[9]
D. a[10]
7. 表达式tuple(list('Python'))的运算结果是?(B)(2分)
A. ['Python']
B. ('P', 'y', 't', 'h','o', 'n')
C. ['P', 'y', 't', 'h','o', 'n']
D. ('Python')
8. 若list_a = [5, 4, 1, 2, 3],以下选项中能够输出 [5, 4, 3, 2, 1] 的是?(C)(2分)
A.
list_a = sorted(list_a)
print(list_a)
B.
list_a.sort()
print(list_a)
C.
list_a.sort(reverse=True)
print(list_a)
D.
list_a.sort(reverse=False)
print(list_a)
9. 以下代码的输出结果是?(A)(2分)
s= list(range(10))
print(10 not in s)
A. True
B. False
C. 0
D. -1
10. 以下代码运行结果正确的是?(D)(2分)
list1 = [[[[['a']],['冰墩墩']],6],['雪容融']]
print(len(list1))
A. 5
B. 4
C. 3
D. 2
11. 请为下列程序空白处选出合适的选项,输出结果为['a', 'A', 9, 'a']?(B)(2分)
ls1 = ['a','A','a',9,'a']
______
print(ls1)
A. del ls1('a')
B. ls1.pop(2)
C. ls1.clear()
D. ls1.remove('a')
12. 以下代码的输出结果是?(D)(2分)
ls = [1,2,[3,4],[5,6]]
print(ls[2][1])
A. 6
B. 2
C. 3
D. 4
13. 下面代码的输出结果是?(A )(2分)
for i in range(1,6):
if i%3==0:
break
else:
print(i,end=",")
A. 1,2,
B. 1,2,3,
C. 1,2,3,4,5,
D. 1,2,3,4,5,6,
14. 给定字典d,哪个选项对x in d的描述是正确的?(A)(2分)
A. 判断x是否是字典d中的键
B. x是一个二元元组,判断x是否是字典d中的键值对
C. 判断x是否是字典d中的值
D. 判断x是否是在字典d中以键或值方式存在
15. 下列程序的运行结果是?(A)(2分)
str1='0123456789'
str2=str1[1:9:2]
print(str2)
A. 1357
B. 024
C. 13579
D. 0246
16. 小明用元组a存储小组同学的身高,a=(136.0,135.0,142.0,140.0),则min(a)的值是?( B)(2分)
A. 136.0
B. 135.0
C. 142.0
D. 140.0
17. 下列语句运行后,输出结果为2022的是哪个?(A )(2分)
A.
print("20"+"22")
B.
print(20+22)
C.
print("2022"in"2022")
D.
s="你好2022"
print(s[3:4])
18. 已知元组tup2=(1,14,51,4,19,198,10),下列说法有错误的是?(A)(2分)
A. print(tup2[1:-1])可以截取元组的一部分,输出的结果为(14,51,4,19,198,10)
B. print(tup2[3:])可以截取元组的一部分,输出的结果为(4,19,198,10)
C. print(tup2[3:6])可以截取元组的一部分,输出的结果为(4,19,198)
D. print(tup2[5])可以访问元组的第六个元素,输出的结果为198
19. 下列说法错误的是?(A)(2分)
A. 列表的大小是固定的,不可以改变
B. len()方法可以返回列表的元素个数
C. 假设list2列表有十个元素,则list2[2]可以读取list2列表中的第三个元素
D. 列表的数据项不需要具有相同的类型
20. 请根据运行结果将代码空白处填上合适的选项?(D)(2分)
代码:
num1=1
while num1 <= 5:
num2=1
while num2 <= 5:
___________
num2 += 1
print()
num1 += 1
运行结果:
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
4 4 4 4 4
5 5 5 5 5
A. print(num2,end="")
B. print(num2,end =" ")
C. print(num1)
D. print(num1,end =" ")
21. 关于下列伪代码(虚拟代码)说法正确的是?(B)(2分)
if x<10:
代码块A
elif x>=10 and x<20:
代码块B
else:
代码块C
A. 如果x=200,代码块ABC都不会被执行
B. 如果x=20,执行代码块C
C. 如果x=20,执行代码块B
D. 程序先执行C,再执行B,最后执行A
22. 执行以下程序,输入"中国梦2022",输出结果是?(A)(2分)
w = input()
for x in w:
if x=='0'or x =='2':
continue
else:
w.replace(x,'@')
print(w)
A. 中国梦2022
B. 中国@2022
C. @@@2022
D. 2022中国梦
23. 字典dic={'Name': 'Runoob','Age': 7,'Class': 'First'},len(dic)的结果是?(A)(2分)
A. 3
B. 6
C. 9
D. 12
24. 以下不能创建一个字典的语句是?(C)(2分)
A. dic={"name":"python"}
B. dic={"age":13}
C. dic={[1,2]:"user"}
D. dic={}
25. 关于字符串的操作,下列说法错误的是?(C)(2分)
A. len()返回字符串长度
B. count()统计字符或者字符串在整个字符串中的个数
C. sort()可以给字符串排序
D. split()是给字符串进行分割
二、判断题(共10题,共20分)
26. 字典中的键是唯一的,不能重复。而值对应于键,值是可以重复的。(对)
27. print(len('See You'))这句指令的长度是有7个字符,因为两个单词间的空格也算一个字符。(对)
28. 以下程序的执行结果是“假”。(对)
x=2
if 10>20 and x>0:
print('真')
else:
print('假')
29. 列表和元组都可以作为字典的键。(错)
30.
a = [1, 2, 3, 4]
s = 0
for i in a:
s += 1
print(s)
以上代码的运行结果是4。(对)
31. 元组是不可变的序列,这里的不可变包括不能对元组对象进行增加元素、删除元素,修改元素位置是可以的。(错)
32. 运行下列程序段后,屏幕上绘制的是一个五边形。(错)
import turtle as t
for i in range(1,5):
t.forward(50)
t.left(90)
33. 若s="人脸识别可以识别人脸信息",则执行s.replace("人脸","图像")语句后,s的值为"图像识别可以识别图像信息"。(错)
34. (127,3.56,'1&5#!^*2','4.(.$0..6')是一个合法的元组。(对)
35. 在Python中range(),表示的是正整数序列,负数是无效的。(错)
三、编程题(共2题,共30分)
36. 某航空公司对于托运行李有尺寸要求,必须满足以下条件:
每件托运行李的长、宽、高三边之和须大于或等于60厘米,且小于或等于203厘米。(注意只是三边,不考虑立方体的整个周长,相当于只求长+宽+高三个数字的和,如,长宽高为:20、30、40,则之和为90)
编写一个重复执行的程序,要求如下:
1、用户一次性输入三个数字,分别代表行李的长、宽、高(单位:厘米),三个数字直接用英文的逗号隔开;如:23,45,67
2、程序自动将输入的长宽高转化为列表或者元组;
3、程序需要判断用户输入的托运行李尺寸是否满足此航空公司的要求。
4、如果满足要求,就输出"可以托运"。如果不满足要求,就输出"不可以托运"。
5、然后重复以上操作,重复次数不限。
参考程序一:
#使用元组及嵌套if判断
while True:
a=eval(input('请输入长宽高(厘米):'))
sum=sum(a)
if sum>=60:
if sum<=203:
print('可以托运')
else:
print('不可以托运')
else:
print('不可以托运')
参考程序二:
#使用元组及and逻辑运算
while True:
a=eval(input('请输入长宽高(厘米):'))
sum=sum(a)
if (sum>=60) and (sum<=203):
print('可以托运')
else:
print('不可以托运')
参考程序三:
c = []
while True:
a=input('请输入长宽高(厘米):')
b = a.split(",")
for i in b:
i = int(i)
c.append(int(i))
sum=sum(c)
if (sum>=60) and (sum<=203):
print('可以托运')
else:
print('不可以托运')
评分标准:
(1)能正确地要求用户分别输入长、宽、高;(2分)
(2)能正确地将用户输入的字符串转换为列表或者元组类型;(2分)
(3)使用至少一个if判断;(2分)
(4)能正确判断行李尺寸是否符合要求;(2分)
(5)能输出正确的结果;(1分)
(6)程序可循环运行。(1分)
37. 统计一段文本中有几句话
编写程序,要求如下:
1.程序开始运行后,需要用户输入一段中文;
2.根据用户的输入,统计其中共有几句话(以句末为“。”“?”或“!”为依据,判断一句话);
3.输出统计结果,如:“这段话中共有3句话”。
参考程序:
text=input("请输入一段中文")
count=0
for t in text:
if t=="。" or t=="!" or t=="?":
count=count+1
print("这段话中共有{}句话".format(count))
评分标准:
(1)用input()函数获取输入的一段中文文本;(5分)
(2)有用于记数的变量,进行统计;(5分)
(3) 判断文本中每个字符是否是“。”“?”“!”,如果是就累加记数;(5分)
(4) 最后进行格式化输出。(5分)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。