多个集合联合以及列表理解

Multiple set unions along with list comprehension

我正在尝试理解这段代码:

edit_two_set = set()
edit_two_set = set.union(*[edit_two_set.union(edit_one_letter(w, allow_switches)) for w in one])

这里一个是一组字符串。 allow_switches 是正确的。 edit_one_letter取一个单词,进行一个字符的插入、删除或相应字符的一次切换。

我明白了:

[edit_two_set.union(edit_one_letter(w, allow_switches)) for w in one]

正在执行列表推导式,其中我们对一个字符中的每个单词进行一个字符编辑,然后将结果集与前一组合并。

我主要停留在试图理解什么:

set.union(*[])

正在干什么? 谢谢!

你可以参考这个:

https://docs.python.org/3/library/stdtypes.html#frozenset.union

列表理解return是一个集合列表。

set.union(*) 将执行列表中集合的并集和 return 新集合。