华南理工大学 Python第6章课后测验-1

1、(单选)以下关于语句 a = [1,2,3,(4,5)]的说法中,正确的个数有( )个。
(1)a是元组类型   (2)a是列表类型  
(3)a有5个元素      (4)a有4个元素
(5)a[2]的值为2  (6)在程序执行过程中,不能修改a中元素的值(本题分数:2)
A) 2
B) 3
C) 4
D) 5

【解析】1,3,5,6是错的
您的答案:A  正确率:100%

2、(单选)以下程序的执行结果是。
L = [1, 3, 5, 7, 9] 
print(L.pop(-3), end = ' ') 
print(L.remove(L[0]), end = ' ') 
print(L)
(本题分数:2)
A) 5 1 [3, 7, 9]
B) 5 1 [1, 3, 7, 9]
C) 5 None [3, 7, 9]
D) 5 None [1, 3, 7, 9]
您的答案:C  正确率:100%

3、(单选)以下字典的定义,会报错的是(  ):(本题分数:2)
A) di={1:'a',2:'b'}
B) di={'1':'a','2':'b'}
C) di={(1,3):'a',(2,4):'b'}
D) di={[1,3]:'a',[2,4]:'b'}
您的答案:D  正确率:100% 

4、(单选)以下哪种组合数据类型的变量,在创建后,能修改其中元素的值?(本题分数:2)
A) 字符串
B) 元组
C) 集合
D) 列表
您的答案:D  正确率:100%

5、(单选)di = {0:"a", 1:"b", 2:"c"},以下语句能向di中增加(3:"o")的是。(本题分数:2)
A) di.get(3,"o")
B) di+={3:"o"}
C) di[3]="o"
D) 以上都可以
您的答案:C  正确率:100%

6、(单选)关于以下程序段的说法中,正确的有()个。
a = [1,2,[3,4]]
b = [1,2,(3,4)]

(1)变量a有3个元素  
(2)变量b有4个元素  
(3)变量a和b都是列表类型
(4)a[2][0]的值为3  
(5)b[2][1]的值为4  
(6)语句a[2][1]=5可以正常执行
(7)语句b[2][0]=8可以正常执行(本题分数:2)
A) 3
B) 4
C) 5
D) 6

【解析】2是错的(b有3个元素),7是错的(b[2]是元组不能修改)
您的答案:C  正确率:100%

7、(单选)di是一个字典类型的变量,以下不能打印字典di中的value的是。(本题分数:2)
A) 
for x,y in di.items():
  print(y)

B) 
for x in di.values():
  print(x)

C) 
for x in di:
  print(di[x])

D) 
for x in di:
  print(x)

您的答案:D  正确率:100%

8、(单选)下列程序段的输出结果是()
s={1,3,5}
t={3,4,5}
print(s ^ t)
(本题分数:2)
A) {1}
B) {1,4}
C) {1,3,4,5}
D) {3,5}
您的答案:B  正确率:100%

9、(单选)以下数据类型中,哪个不是序列类型?(本题分数:2)
A) 字符串
B) 元组
C) 集合
D) 列表
您的答案:C  正确率:100%

10、(单选)以下程序段的输出结果是()
a = "1234567890"
print(a[1:8:2])
(本题分数:2)
A) 12345678
B) 182
C) 1357
D) 2468
您的答案:D  正确率:100%

11、(单选)下列程序段的输出结果是()。
c=1,2,3
print(c*3)
(本题分数:2)
A) (3,6,9)
B) (1,1,1,2,2,2,3,3,3)
C) (1,2,3,1,2,3,1,2,3)
D) 程序有错,不能运行
您的答案:C  正确率:100%

12、(单选)下列程序段的输出结果是()
s={1,3,5}
t={3,4,5}
print(s | t)
(本题分数:2)
A) {1}
B) {1,4}
C) {3,5}
D) {1,3,4,5}
您的答案:D  正确率:100%

13、(单选)字典类型变量可以用()符号来建立。(本题分数:2)
A) []
B) {}
C) ()
D) <>

【解析】注意,空集合不能用{}来创建
您的答案:B  正确率:100% 

14、(单选)以下关于字典类型的说法,正确的个数有()个。
(1)键和值用冒号连接
(2)字典的各个元素之间有顺序之分
(3)字典的键不能用列表类型
(4)字典键值对的值不能重复(本题分数:2)
A) 1
B) 2
C) 3
D) 4

【解析】1,3是对的
您的答案:B  正确率:100%  

15、(单选)以下代码的输出结果是()
a = {'a':'b',1:2,7:8}
for k in a:
    print(k,end=',')
(本题分数:2)
A) 'a':'b',1:2,7:8,
B) a,1,7,
C) b,2,8,
D) k
您的答案:B  正确率:100%

16、(单选)以下程序段的输出结果是()
a={'华工':'广州','中大':'广州','清华':'北京'}
print(a.get('广州','华南理工大学'))
(本题分数:2)
A) 华工
B) 中大
C) 华南理工大学
D) 清华
您的答案:C  正确率:100%

17、(单选)S和T是两个集合,哪个选项对S^T的描述是正确的?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬(本题分数:2)
A) S和T的交运算,包括同时在集合S和T中的元素
B) S和T的差运算,包括在集合S但不在T中的元素
C) S和T的并运算,包括在集合S和T中的所有元素
D) S和T的补运算,包括集合S和T中的非相同元素
您的答案:D  正确率:100%

18、(单选)关于Python组合数据类型,以下描述错误的是(  ):‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬(本题分数:2)
A) 组合数据类型只能将相同类型的数据组织起来
B) 组合数据类型可以分为3类:序列类型、集合类型和映射类型
C) 序列类型是一个元素向量,元素之间存在先后关系,通过序号访问
D) Python的字符串、元组和列表类型都属于序列类型
您的答案:A  正确率:100%

19、(单选)列表ls,哪个选项对ls.append(x)的描述是正确的?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬(本题分数:2)
A) 向列表ls最前面增加一个元素x
B) 替换列表ls最后一个元素为x
C) 向ls中增加元素,如果x是一个列表,则可以同时增加多个元素
D) 只能向列表ls最后增加一个元素x

【解析】ls.append(x),如果x是一个列表,则该列表作为一个元素增加到ls中
您的答案:D  正确率:100%

20、(单选)关于Python的元组类型,以下选项错误的是():‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬(本题分数:2)
A) 元组采用逗号和圆括号(可选)来表示
B) 元组一旦创建就不能被修改
C) 一个元组可以作为另一个元组的元素,可以采用多级索引获取信息
D) 元组中元素必须是相同类型
您的答案:D  正确率:100%

21、(单选)给定字典d,哪个选项对d.values()的描述是正确的?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬(本题分数:2)
A) 返回一个集合类型,包括字典d中所有值
B) 返回一个元组类型,包括字典d中所有值
C) 返回一个列表类型,包括字典d中所有值
D) 返回一种dict_values类型,包括字典d中所有值
您的答案:D  正确率:100%

22、(单选)给定字典d,哪个选项对x in d的描述是正确的?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬(本题分数:2)
A) 判断x是否是在字典d中以键或值方式存在
B) 判断x是否是字典d中的键
C) x是一个二元元组,判断x是否是字典d中的键值对
D) 判断x是否是字典d中的值
您的答案:B  正确率:100%

23、(单选)关于大括号{},以下描述正确的是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬(本题分数:2)
A) 直接使用{}将生成一个列表类型
B) 直接使用{}将生成一个集合类型
C) 直接使用{}将生成一个元组类型
D) 直接使用{}将生成一个字典类型
您的答案:D  正确率:100% 

24、(单选)序列s,哪个选项对s.index(x)的描述是正确的?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬(本题分数:2)
A) 返回序列s中序号为x的元素
B) 返回序列s中元素x第一次出现的序号
C) 返回序列s中元素x所有出现位置的序号
D) 返回序列s中x的长度
您的答案:B  正确率:100%

25、(填空)下列程序的运行结果是  7  
x=[1,2,3]
y=x+[4]
print(len(x+y))
(本题分数:3)
您的答案:【1】7    正确率:100%

26、(填空)语句 school=['scut','pku','scau']则 print(school[1][1])的结果是  k  .(本题分数:3)
您的答案:【1】k    正确率:100%

27、(填空)语句 print("abcdefabc".index('a',1,7))的输出结果是  6  。(本题分数:3)
您的答案:【1】6    正确率:100%

28、(填空)设 s={1,3,5},t={1,2,3,4}则 s.issubset(t)的结果是  False  (填True或False)。(本题分数:3)
您的答案:【1】False    正确率:100%

29、(填空)设 s={1,3,5},t={2,4,6}则 s < t的值为  False  (填True或False)。(本题分数:3)

【解析】s < t 判断 s是否是t的子集
您的答案:【1】False    正确率:100%

30、(填空)以下程序段的输出结果是  5  
a = [1,2,3,4]
b = a
a[1] = 3
b[0] = 2
print(a[0]+b[1])
(本题分数:3)
您的答案:【1】5    正确率:100%

31、(填空)下列程序段执行后,输出的结果是  4  
a={'华工':'广州','中大':'广州','清华':'北京'}
a['华师']='广州'
a['清华']='上海'
print(len(a))
(本题分数:3)
您的答案:【1】4    正确率:100%

32、(填空)下列程序段的输出结果是  10  
a = [1,2,3,4,5]
b = a
c = a[:]
b[1] = 6
c[2] = 5
print(a[0]+a[1]+a[2])
(本题分数:3)

【解析】b是列表a的别名,当b改变a也会跟着改变。c是列表a复制出来的,改变c的值不会改变a的值
您的答案:【1】10    正确率:100%

33、(填空)下列程序段的输出结果是  8  
s1=[1,2,3]
s2=s1+[2,5]
print(len(s1+s2))
(本题分数:3)
您的答案:【1】8    正确率:100%

34、(填空)下列程序段的输出结果是  7  
s1=[1,2,3]
s2=s1+[(2,5)]
print(len(s1+s2))
(本题分数:3)
您的答案:【1】7    正确率:100%

35、(填空)下列程序段的输出结果是  4  
a={"a":2,"b":3,"c":6}
a.pop("b")
print(a["a"]+len(a))
(本题分数:3)
您的答案:【1】4    正确率:100% 

36、(填空)现有以下程序段:
a=set(range(2,13,3))
print(a)

变量a的类型是  集合  (填列表,元组,集合或字典),a中有  4  个元素,max(a)的值是  11  。(本题分数:3)
您的答案:【1】集合  【2】4  【3】11    正确率:100%

37、(程序填空)下列程序中,列表a保存的是学生考试成绩(注意:下列程序只写出部分数据,其它数据用...表示)。用遍历的方式计算成绩的平均分,并按3位小数的格式输出平均分。请在(1),(2),(3)填上合适的内容。
a=[('张小明',86),('李明',90),('陈强',76),('百度',72),('谷歌',68) ....]
s=0
for x in __(1)__:
    s = s + a[x][1]
print('平均分为__(2)__'.format(__(3)__))
(本题分数:4)

【参考答案】


38、(程序填空)字典score的键是学号,值是计算机,数学,英语的成绩。以下程序计算数学成绩大于或等于130的同学个数,请在(1),(2),(3)处填上合适的内容。
score={"202201":(105,139,125),"202202":(95,124,138),"202203":(117,120,119),"202204":(85,98,99)...}
t=__(1)__
for x in  score.items():
    if __(2)__ >=130:
        t=t+1
print("数学成绩大于等于130的同学有{}个".format(__(3)__))
(本题分数:4)

【参考答案】


39、(程序填空)下面代码将姓名列表和成绩列表组合成一个字典(一一对应,例如Bob对应75分),请在(1),(2)填上合适的内容。
names = ['Michael', 'Bob', 'Tracy',...]
scores = [95, 75, 85,...]

n_s = {}
for i in range( __(1)__ ):  
    n_s[names[i]]  = __(2)__
print(n_s)
(本题分数:4)

【参考答案】


40、(程序填空)下面代码实现统计name_score字典中不及格的人的数目(不及格表示分数小于60分),请在(1)(2)处填上合适内容完善代码。
name_score={    'GimGoon': 100,   'Tian': 100,    'Doinb': 0,    'LWX': 50,    'Crisp': 80 }

ct = 0
for __(1)__:
    if name_score[key]<60:
        __(2)__

print(ct)
(本题分数:4)

【参考答案】

posted @ 2022-05-14 16:25  AlphaInf  阅读(4473)  评论(0编辑  收藏  举报