各位好:
在学习Python数据结构当中,有案例可以完善“删除序列相同元素并保持顺序问题”功能,在针对非hashable类型删除重复元素。代码如下:
def dedupe2(items,key=None): seen = set() for item in items: val = item if key is None else key(item) if val not in seen: yield item seen.add(val)
上诉代码中“item if key is None else key(item)”这个语法含义是什么?不是很明白,看起来很像if语句。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
Deterior 如果key是 None, val就赋值为item,否则赋值为 key(item)