我有以下问题的解决方法。该解决方法将是一个 for 循环,其中包含一个测试以包含在输出中,如下所示:
#!/usr/bin/env python
def rem_dup(dup_list):
reduced_list = []
for val in dup_list:
if val in reduced_list:
continue
else:
reduced_list.append(val)
return reduced_list
我在问以下问题,因为我很想知道是否有列表理解解决方案。
给定以下数据:
reduced_vals = []
vals = [1, 2, 3, 3, 2, 2, 4, 5, 5, 0, 0]
为什么
reduced_vals = = [x for x in vals if x not in reduced_vals]
生成相同的列表?
>>> reduced_vals
[1, 2, 3, 3, 2, 2, 4, 5, 5, 0, 0]
我认为这与将输出 ( reduced_vals
) 作为分配给列表的一部分进行检查有关。我很好奇,但确切的原因。
谢谢你。