1. 将元组 (1,2,3) 和集合 {4,5,6} 合并成一个列表。
tup=(1,2,3)
set={4,5,6}
list=list(tup)+list(set)
print(list)
2. 在列表 [1,2,3,4,5,6] 首尾分别添加整型元素 7 和 0。
#方法1
list=[1,2,3,4,5,6]
list.insert(0,7)
#list.append(0) 这两种也可以
#list.insert(len(list),0)
list.extend([0])
print(list)
#方法2
list2=[1,2,3,4,5,6]
temp=[7]+list2+[0]
print(temp)
3. 反转列表 [0,1,2,3,4,5,6,7] 。
list=[0,1,2,3,4,5,6,7]
temp=reversed(list)
for i in temp:
print(i,end=" ")
print()
list2=[0,1,2,3,4,5,6,7]
list2.reverse()
print(list2)
4. 反转列表 [0,1,2,3,4,5,6,7] 后给出中元素 5 的索引号。
注意,对于列表,没有find方法,字符串才有。
list2=[0,1,2,3,4,5,6,7]
list2.reverse()
print(list2)
i=list2.index(5)
print(i)
5. 从列表 [True,1,0,'x',None,'x',False,2,True]中删除元素'x'。
list=[True,1,0,'x',None,'x',False,2,True]
list.remove('x')
print(list)
6. 从列表 [True,1,0,'x',None,'x',False,2,True] 中删除索引号为4的元素。
list=[True,1,0,'x',None,'x',False,2,True]
list.pop(4)
print(list)
7. 删除列表中索引号为奇数(或偶数)的元素。
list1=[0,1,2,3,4,5,6,7,8,9]
list2=list1[0:len(list1):2]
print(list2)
或
list1=[0,1,2,3,4,5,6,7,8,9]
list2=[]
for i in range(0,len(list1),2):
list2.append(list1[i])
print(list2)
8. 清空列表中的所有元素。
list1=[0,1,2,3,4,5,6,7,8,9]
print(list1)
list1.clear()
print(list1)
9. 对列表 [3,0,8,5,7] 分别做升序和降序排列。
list=[3,0,8,5,7]
print(list)
list.sort()
print(list)
list.sort(reverse=True)
print(list)
11. 将列表 [3,0,8,5,7] 中大于 5 元素置为1,其余元素置为0。
list= [3,0,8,5,7]
for i in range(0,len(list)):
if(list[i]>5):
list[i]=1
else:
list[i]=0
print(list)
或
list= [3,0,8,5,7]
for i,j in enumerate(list):
if j>5:
list[i]=1
else:
list[i]=0
print(list)
12. 遍历列表 ['x','y','z'],打印每一个元素及其对应的索引号。
list= ['x','y','z']
for i,j in enumerate(list):
print(i,j)
13. 将列表 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 拆分为奇数组和偶数组两个列表。
lst=[0,1,2,3,4,5,6,7,8,9]
leven=lst[::2]
lodd=lst[1::2]
print(leven)
print(lodd)
14. 分别根据每一行的首元素和尾元素大小对二维列表 [[6, 5], [3, 7], [2, 8]] 排序。
lst=[[6,5],[3,7],[2,8]]
lst.sort()
lst.sort(key=lambda x:x[-1],reverse=True)
print(lst)
15. 从列表 [1,4,7,2,5,8] 索引为3的位置开始,依次插入列表 ['x','y','z'] 的所有元素。
list= [1,4,7,2,5,8]
list=list[:4]+ ['x','y','z'] +list[4:]
print(list)
16. 快速生成由 [5,50) 区间内的整数组成的列表。
lst=list(range(5,50))
print(lst)
17. 若 a = [1,2,3],令 b = a,执行 b[0] = 9, a[0]亦被改变。为何?如何避免?
改为b=a.copy()或者b=a[:]
a=[1,2,3]
b=a
b[0]=9
print(a)
print(b)
a=[1,2,3]
b=a[:]
b[0]=9
print(a)
print(b)
a=[1,2,3]
b=a.copy()
b[0]=9
print(a)
print(b)
18. 将列表 ['x','y','z'] 和 [1,2,3] 转成 [('x',1),('y',2),('z',3)] 的形式。
lst=list(zip(['x','y','z'],[1,2,3])) #打包为元组的列表
print(lst)
19. 以列表形式返回字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中所有的键。
s1={'Alice':20,'Beth':18,'Cecil':21}
print(list(s1.keys()))
20. 以列表形式返回字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中所有的值。
s1={'Alice':20,'Beth':18,'Cecil':21}
print(list(s1.values()))
21. 以列表形式返回字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中所有键值对组成的元组。
s1={'Alice':20,'Beth':18,'Cecil':21}
print(list(s1.items()))
22. 向字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中追加 'David':19 键值对,更新Cecil的值为17。
map={'Alice': 20, 'Beth': 18, 'Cecil': 21}
map['David']=19
map['Cecil']=17
print(map)
23. 删除字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中的Beth键后,清空该字典。
map={'Alice': 20, 'Beth': 18, 'Cecil': 21}
map.pop('Beth')
print(map)
map.clear()
print(map)
24. 判断 David 和 Alice 是否在字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21} 中。
map={'Alice': 20, 'Beth': 18, 'Cecil': 21}
print('David' in map)
print('Alice' in map)
25. 遍历字典 {'Alice': 20, 'Beth': 18, 'Cecil': 21},打印键值对。
map= {'Alice': 20, 'Beth': 18, 'Cecil': 21}
for i,j in map.items():
print(i,j)
26. 若 a = dict(),令 b = a,执行 b.update({'x':1}), a亦被改变。为何?如何避免?
改为b=a.copy()
a=dict()
b=a
b.update({'x':1})
print(a)
print(b)
27. 以列表 ['A','B','C','D','E','F','G','H'] 中的每一个元素为键,默认值都是0,创建一个字典。
map={}.fromkeys(['A','B','C','D','E','F','G','H'] ,0)
print(map)
28. 将二维结构 [['a',1],['b',2]] 和 (('x',3),('y',4)) 转成字典。
map={}
list= [['a',1],['b',2]]
for i in range(0,len(list)):
map[list[i][0]]=list[i][1]
print(map)
29. 将元组 (1,2) 和 (3,4) 合并成一个元组。
tup1=(1,2)
tup2=(3,4)
tup3=tup1+tup2
print(tup3)
30. 将空间坐标元组 (1,2,3) 的三个元素解包对应到变量 x,y,z。
x,y,z=(1,2,3)
print(x,y,z)