A48753. 简单去重问题:对于给定的列表, 要求对列表中每个重复元素只输出一次, 请你编程完成这个任务。例如: 对于测试列表 a=[11,1,14,23,11,89,14,56,89]有如下 3 种算法, 请你补全代码。#方法 1a=[11,1,14,23,11,89,14,56,89]result=[]for i in a: if i not in result: ____①____print("方法 1…
填空题
困难
知识点
题目描述
简单去重问题:
对于给定的列表, 要求对列表中每个重复元素只输出一次, 请你编程完成这个任务。
例如: 对于测试列表 a=[11,1,14,23,11,89,14,56,89]
有如下 3 种算法, 请你补全代码。
#方法 1
a=[11,1,14,23,11,89,14,56,89]
result=[]
for i in a:
if i not in result:
____①____
print("方法 1:",result)
#方法 2
a=[11,1,14,23,11,89,14,56,89]
for i in [j for j in a if a.count(i)>1]:
for x in range(a.count(i)-1):
____②____
print("方法 2:",a)
#方法 3
a=[11,1,14,23,11,89,14,56,89]
i=0
while i<=len(a)-1:
if a.count(a[i])>1:
____③____
else:
____④____
print("方法 3:",a)
参考答案
a=[11,1,14,23,11,89,14,56,89]
result=[]
for i in a:
if i not in result:
result.append(i)
print("方法 1:",result)
#方法 2
a=[11,1,14,23,11,89,14,56,89]
for i in [j for j in a if a.count(i)>1]:
for x in range(a.count(i)-1):
a.remove(i)
print("方法 2:",a)
#方法 3
a=[11,1,14,23,11,89,14,56,89]
i=0
while i<=len(a)-1:
if a.count(a[i])>1:
a.pop(i)
else:
i+=1
print("方法 3:",a)
上一题
下一题