内容正文:
专题六 Python 列表
一、单项选择题
1. lst1=[1,2,3];lst2=[4,5,6]则len(lst1*2+lst2*3)的值为( )。
A. 6
B. 12
C. 15
D. 10
【答案】C
【解析】lst1*2的长度为6 lst2*3的长度为9 则总长度为15
2.下列选项中,关于列表的说法错误的是( )。
A. 列表之间可以进行连接
B. 列表里面的元素可以进行复制
C. 任意长度的列表,最后一个元素的索引为-1
D. 列表里面不可以嵌套列表
【答案】D
【解析】列表是一个容器可以存放任意数据类型的数据
3.list(range(1,10,3))的执行结果为( )。
A. [1,4,7,10]
B. [1,4,7]
C. [7,4,1]
D. [10,7,4,1]
【答案】B
【解析】list()函数将range(1,10,3)对象转为列表类型
4. lst=[1,2,3]则lst.append([4,5])的值为( )。
A. [1,2,3,5,4]
B. [1,2,[4,5],3]
C. [1,2,3,[4,5]]
D. [1,2,3,4,5]
【答案】C
【解析】lst.append([4,5])将列表[4,5]看作整体
5. lst=[1,2,3]则lst.extend([4,5])的值为( )。
A. [1,2,3,5,4]
B. [1,2,[4,5],3]
C. [1,2,3,4,5]
D. [1,2,3,[4,5]]
【答案】C
【解析】lst.extend([4,5])将列表[4,5]里面的元素添加到列表的末尾
6. x=([1],[2]) 执行语句x[0].append([3,4])和x[1].extend([3,4])之后,x的值分别为( )。
A. ([1, [3, 4]], [2]) ([1], [2, 3, 4])
B. ([1,3, 4], [2]) ([1], [2, 3, 4])
C. ([1, 3, 4], [2]) ([1], [2, [3, 4]])
D. 报错
【答案】A
【解析】x[0]的值为[1],则append([3,4])就是将[3,4]添加到列表[1]里面值为[1,[3,4]]
x[1]的值为[2],则extend([3,4])就是将[3,4]里面的元素依次添加到[2]里面值为[2,3,4]
7. x=list(range(2,15,3))则x[-3::-1]的值分别为( )。
A. [14, 11]
B. [2, 5, 8]
C. [8, 5, 2]
D. [8, 11, 14]
【答案】C
【解析】x的值为[2, 5, 8, 11, 14] 则x[-3::-1]的值为[8,5,2]
8.下面代码的运行结果为:
lst=[1,2,3,4,5,6]
lst[1:4]=[20,30,40]
print(lst)
A. [1, 20, 30, 40, 5, 6]
B. [1, 20, 30, 40, 4,5, 6]
C. [1, 20, 30, 40, 6]
D. 报错
【答案】A
【解析】lst[1:4]取切片的元素为2,3,4,右侧的20,30,40依次赋值给对应的元素,最终的结果为[1, 20, 30, 40, 5, 6]
9.下面代码的运行结果为:
lst=[1,2,3,4,5,6]
lst[1:4]=[20,30]
print(lst)
A. [1, 20, 30,4, 5, 6]
B. [1, 20, 30, 5, 6]
C. [1, 20, 30, 6]
D. 报错
【答案】B
【解析】lst[1:4]取切片的元素为2,3,4,右侧的20,30依次赋值给对应的元素多出的元素4被删除,最终的结果为[1, 20, 30, 5, 6]
10.下面代码的运行结果为:
lst=[1,2,3,4,5,6]
lst[1:4]=[]
print(lst)
A. [1,2,3,4,5,6]
B. [1,2,3,5,6]
C. [1,2,5,6]
D. [1,5,6]
【答案】D
【解析】lst[1:4]取切片的元素为2,3,4,右侧为一个空列表。则切出的元素2,3,4都被删除,最终的结果为[1,5,6]
二、填空题
1. lst=[1,2,[3,4,5,[6,7,8]]];print(len(lst))的结果为为__________。
【答案】3
【解析】[3,4,5,[6,7,8]]是一个列表,因此长度为3
2. print(max([True,1,0,-1]))的结果为为__________。
【答案】3
【解析】True和1的值大小相同但是True在前面,因此返回True
3.print(min([0,False,1,2]))的结果为为__________。
【答案】0
【解析】0和False的值大小相同但是0在前面,因此返回0
4. lst=[3,1,2,4,7];print(sorted(lst,reverse=True))的结果为为__________。
【答案】[7, 4, 3, 2, 1]
【解析】reverse的值为True表示降序排序,因此结果为[7, 4, 3, 2, 1]
5. lst=[1,2,3,4,5];print(lst.pop())的结果为为__________。
【答案】5
【解析】lst.pop()默认删除最后一个元素并且返回删除的元素
6. st=[1,2,3,4,5];print(lst.pop(2))的结果为为__________。
【答案】3
【解析】lst.pop(2)删除索引2的元素,索引2位置的元素是3
7. lst=[1,2,3,4,5];lst.pop(3);print(lst)的结果为为__________。
【答案】[1, 2, 3, 5]
【解析】lst.pop(3)删除索引3位置的元素,列表的值为[1, 2, 3, 5]
8. lst=[1,2,3];nslt=lst.copy();nslt[1]=20;print(lst[1])的结果为为__________。
【答案】2
【解析】对于只有一级元素的列表,浅拷贝可以列表里面的元素全部复制,因此lst不受影响
9. lst=[1,2,[3,4]];nslt=lst.copy();nslt[2][0]=30;print(lst[2][0])的结果为为__________。
【答案】30
【解析】有二级元素的列表,浅拷贝不能复制列表[3,4],因此[3,4]列表的元素3被修改为30,lst也会同时修改
10. lst=[1,2,3,4];print(sum(lst)+len(lst)+lst.pop(2))的结果为为__________。
【答案】17
【解析】sum(lst)的值为10,len(lst)的值为4,lst.pop(2)的值为3,最后的累加和为17
学科网(北京)股份有限公司
$$
专题六 Python 列表
一、单项选择题
1. lst1=[1,2,3];lst2=[4,5,6]则len(lst1*2+lst2*3)的值为( )。
A. 6
B. 12
C. 15
D. 10
【答案】C
【解析】lst1*2的长度为6 lst2*3的长度为9 则总长度为15
2.下列选项中,关于列表的说法错误的是( )。
A. 列表之间可以进行连接
B. 列表里面的元素可以进行复制
C. 任意长度的列表,最后一个元素的索引为-1
D. 列表里面不可以嵌套列表
【答案】D
【解析】列表是一个容器可以存放任意数据类型的数据
3.list(range(1,10,3))的执行结果为( )。
A. [1,4,7,10]
B. [1,4,7]
C. [7,4,1]
D. [10,7,4,1]
【答案】B
【解析】list()函数将range(1,10,3)对象转为列表类型
4. lst=[1,2,3]则lst.append([4,5])的值为( )。
A. [1,2,3,5,4]
B. [1,2,[4,5],3]
C. [1,2,3,[4,5]]
D. [1,2,3,4,5]
【答案】C
【解析】lst.append([4,5])将列表[4,5]看作整体
5. lst=[1,2,3]则lst.extend([4,5])的值为( )。
A. [1,2,3,5,4]
B. [1,2,[4,5],3]
C. [1,2,3,4,5]
D. [1,2,3,[4,5]]
【答案】C
【解析】lst.extend([4,5])将列表[4,5]里面的元素添加到列表的末尾
6. x=([1],[2]) 执行语句x[0].append([3,4])和x[1].extend([3,4])之后,x的值分别为( )。
A. ([1, [3, 4]], [2]) ([1], [2, 3, 4])
B. ([1,3, 4], [2]) ([1], [2, 3, 4])
C. ([1, 3, 4], [2]) ([1], [2, [3, 4]])
D. 报错
【答案】A
【解析】x[0]的值为[1],则append([3,4])就是将[3,4]添加到列表[1]里面值为[1,[3,4]]
x[1]的值为[2],则extend([3,4])就是将[3,4]里面的元素依次添加到[2]里面值为[2,3,4]
7. x=list(range(2,15,3))则x[-3::-1]的值分别为( )。
A. [14, 11]
B. [2, 5, 8]
C. [8, 5, 2]
D. [8, 11, 14]
【答案】C
【解析】x的值为[2, 5, 8, 11, 14] 则x[-3::-1]的值为[8,5,2]
8.下面代码的运行结果为:
lst=[1,2,3,4,5,6]
lst[1:4]=[20,30,40]
print(lst)
A. [1, 20, 30, 40, 5, 6]
B. [1, 20, 30, 40, 4,5, 6]
C. [1, 20, 30, 40, 6]
D. 报错
【答案】A
【解析】lst[1:4]取切片的元素为2,3,4,右侧的20,30,40依次赋值给对应的元素,最终的结果为[1, 20, 30, 40, 5, 6]
9.下面代码的运行结果为:
lst=[1,2,3,4,5,6]
lst[1:4]=[20,30]
print(lst)
A. [1, 20, 30,4, 5, 6]
B. [1, 20, 30, 5, 6]
C. [1, 20, 30, 6]
D. 报错
【答案】B
【解析】lst[1:4]取切片的元素为2,3,4,右侧的20,30依次赋值给对应的元素多出的元素4被删除,最终的结果为[1, 20, 30, 5, 6]
10.下面代码的运行结果为:
lst=[1,2,3,4,5,6]
lst[1:4]=[]
print(lst)
A. [1,2,3,4,5,6]
B. [1,2,3,5,6]
C. [1,2,5,6]
D. [1,5,6]
【答案】D
【解析】lst[1:4]取切片的元素为2,3,4,右侧为一个空列表。则切出的元素2,3,4都被删除,最终的结果为[1,5,6]
二、填空题
1. lst=[1,2,[3,4,5,[6,7,8]]];print(len(lst))的结果为为__________。
【答案】3
【解析】[3,4,5,[6,7,8]]是一个列表,因此长度为3
2. print(max([True,1,0,-1]))的结果为为__________。
【答案】3
【解析】True和1的值大小相同但是True在前面,因此返回True
3.print(min([0,False,1,2]))的结果为为__________。
【答案】0
【解析】0和False的值大小相同但是0在前面,因此返回0
4. lst=[3,1,2,4,7];print(sorted(lst,reverse=True))的结果为为__________。
【答案】[7, 4, 3, 2, 1]
【解析】reverse的值为True表示降序排序,因此结果为[7, 4, 3, 2, 1]
5. lst=[1,2,3,4,5];print(lst.pop())的结果为为__________。
【答案】5
【解析】lst.pop()默认删除最后一个元素并且返回删除的元素
6. st=[1,2,3,4,5];print(lst.pop(2))的结果为为__________。
【答案】3
【解析】lst.pop(2)删除索引2的元素,索引2位置的元素是3
7. lst=[1,2,3,4,5];lst.pop(3);print(lst)的结果为为__________。
【答案】[1, 2, 3, 5]
【解析】lst.pop(3)删除索引3位置的元素,列表的值为[1, 2, 3, 5]
8. lst=[1,2,3];nslt=lst.copy();nslt[1]=20;print(lst[1])的结果为为__________。
【答案】2
【解析】对于只有一级元素的列表,浅拷贝可以列表里面的元素全部复制,因此lst不受影响
9. lst=[1,2,[3,4]];nslt=lst.copy();nslt[2][0]=30;print(lst[2][0])的结果为为__________。
【答案】30
【解析】有二级元素的列表,浅拷贝不能复制列表[3,4],因此[3,4]列表的元素3被修改为30,lst也会同时修改
10. lst=[1,2,3,4];print(sum(lst)+len(lst)+lst.pop(2))的结果为为__________。
【答案】17
【解析】sum(lst)的值为10,len(lst)的值为4,lst.pop(2)的值为3,最后的累加和为17
学科网(北京)股份有限公司
$$