知乎上看到180个python面试题,把列表的拿出来练习下 1.已知 AList = [1,2,3,1,2],对 AList 列表元素去重,写出具体过程。 2.如何实现 "1,2,3" 变成 ["1","2","3"] 3.给定两个 list,A 和 B,找出相同元素和不同元素 4.[[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6] 5.合并列表[1,5,7,9]和[2,2,6,8]
#1.列表取重 AList = [1,2,3,1,2] #定义个空列表接收取重后的元素 AList_a = [] #遍历取重的列表 for i in AList: #判断如果元素没有在新列表里就添加进去,如果在就不添加 if i not in AList_a: AList_a.append(i) print(AList_a)
2.如何实现 "1,2,3" 变成 ["1","2","3"]
s = "1,2,3" l_s = s.split(',')#通过str的split()方法返回分割后的字符串列表 print(l_s)
3.给定两个 list,A 和 B,找出相同元素和不同元素
list_A = [1, 2, 3, 4, 5] list_B = [4, 5, 6, 7, 8] list_C = [] #相同元素列表 list_D = [] #不同元素列表 for i in list_A: if i in list_B:#判断如果A列表的元素在B列表就添加到C列表里 list_C.append(i) print(list_C) for i in list_A: if i not in list_B:#判断如果A列表的元素不在B列表就添加到D列表 list_D.append(i) print(list_D)
4.[[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6]
l = [[1,2],[3,4],[5,6]] l_l = [x for i in l for x in i]#使用列表推导试 print(l_l)
5.合并列表[1,5,7,9]和[2,2,6,8]
l1 = [1,5,7,9]
l2 = [2,2,6,8]
l3 = l1 + l2
print(l3)