【发布时间】:2015-09-19 04:26:18
【问题描述】:
我是 Python 新手,我无法理解为什么我会得到带有 None 值的结果。
#Remove duplicate items from a list
def remove_duplicates(list):
unique_list = []
return [unique_list.append(item) for item in list if item not in unique_list]
print remove_duplicates([1,1,2,2]) -> result [None, None]
当我打印结果时,它显示如下:[None, None]
PS:我见过其他解决方案,也知道 list(set(list)) 但我试图理解为什么上面的整数结果会给出 [None, None] 输出。
【问题讨论】:
-
不是更容易吗:
return list(set(list))? -
因为您的语句返回一个列表,其返回值为
unique_list.append(item),即None -
顺便说一句,不要不要使用
list作为变量名,它是builtin function! -
谢谢您的所有回答
标签: python