1.对于以下代码,描述正确的是:(D)
list = ['A', 'B', 'C', 'D', 'E'] print(list[5:])
A.输出[]
B.编译错误
C.输出['A', 'B', 'C', 'D', 'E']
D.导致 IndexError
解析:
如果是索引访问,会导致IndexError,但本体考的是切片,切片操作时如果索引越界不会导致IndexError,只是返回一个空序列,这里返回空列表 []。
2.在Python3中,下列程序运行结果为:(C)
a = [1, 2, 3] b = [4, 5, 6] print(a+b)
A.[1, 2, 3]
B.[4, 5, 6]
C.[1, 2, 3, 4, 5, 6]
D.[5, 7, 9]
解析:
在Python3中,两个列表的加法表示两个列表进行拼接,所以结果为:[1, 2, 3, 4, 5, 6]。
3.在Python3中,下列说法正确的是:(A)
lists = [1, 2, 2, 3, 4, 5] print(lists.index(2))
A.1
B.2
C.3
D.None
解析:
在Python3中,list.index(obj)表示从列表中找出某个值第一个匹配项的索引位置,且列表的索引是从 0 开始的,所以返回 2 所在的第一个索引为 1。
4.下列程序运行结果为:(B)
a=[1, 2, 3, 4, 5] sums = sum(map(lambda x: x + 3, a[1::3])) print(sums)
A.10
B.13
C.15
D.17
解析:
根据题意运行a[1::3],从index=1开始,步幅为3,到一个新的数组b,b=[2,5];运行map(lambda x: x + 3, b),数组b中每个元素加3,又得到一个新的数组c,c=[5,8];运行sums = sum(c),求和得到sums=13;因此选B。
5.下列代码运行结果是?(C)
a = map(lambda x: x**3, [1, 2, 3]) list(a)
A.[1, 6, 9]
B.[1, 12, 27]
C.[1, 8, 27]
D.(1, 6, 9)
解析:
从列表依次取。1,1的3次;2,2的3次;3,3的3次;map()映射两个内置函数:一个函数和一个可迭代的序列;实现功能:将序列的每一个元素作为函数的参数进行运算加工。直到可迭代序列的每一个元素都加工完毕。返回所有加工后的元素构成的新序列。