old_list = ['bob', 'steve', 'bob', 'janice', 'jeff', 'jeff', 'marge',]
filter = []
uniq_list = [filter.append(x) for x in old_list if x not in filter]
这仅将None结果放入我的列表。我也尝试了以下方法,但无法完全正常工作
uniq_list
[None, None, None, None, None]
不太确定如何将实际值而不是布尔值传递回列表。我也尝试过类似以下的方法。
uniq_list = [x for x in old_list if x not in filter]
uniq_list = [x if x not in filter for x in old_list] # there is nothing in filter so i understand why this doesnt work
uniq_list
['bob', 'steve', 'janice', 'jeff', 'marge']
我正在努力完成一些数据查询课程,并使用没有淀粉出版社以及 python技巧的新 serious python 书来学习python。列表推导和生成器都有两个问题:
如何构建列表推导语句( 例如,如果走了)似乎没有记录..或者我找不到 它。
我没有掌握或阅读有关何时应该使用的概念 使用列表推导或生成器,而不是普通的for循环。