完成过滤的两种简单方法是:
names = filter(lambda name: name[-5:] != "Smith", names)
names = [name for name in names if name[-5:] != "Smith"]
请注意,这两种情况都保留谓词函数求值的值True
,因此您必须颠倒逻辑(即,说“保留姓氏为史密斯的人”而不是“删除姓氏为史密斯的人”)史密斯”)。
好笑…两个人分别张贴了我在发布我的同时提出的两个答案。
在Python中从序列中删除项目的优雅方法?
完成过滤的两种简单方法是:
names = filter(lambda name: name[-5:] != "Smith", names)
names = [name for name in names if name[-5:] != "Smith"]
请注意,这两种情况都保留谓词函数求值的值True
,因此您必须颠倒逻辑(即,说“保留姓氏为史密斯的人”而不是“删除姓氏为史密斯的人”)史密斯”)。
好笑…两个人分别张贴了我在发布我的同时提出的两个答案。