有没有更好的办法做到这一点在Python中,或者说:这是一个很好的办法做到这一点。

x = ('a', 'b', 'c')
y = ('d', 'e', 'f')
z = ('g', 'e', 'i')

l = [x, y, z]

s = set([e for (_, e, _) in l])

我看起来有点丑,但是做什么,我需要不需要编写复杂的“get_unique_elements_from_tuple_list”功能...;)

编辑:S的预期值被设置([ 'B', 'E'])

有帮助吗?

解决方案

这很好,这就是集的。有一件事我会改变是这样的:

s = set(e[1] for e in l)

,因为它增强可读性。请注意,我也变成了列表中理解到发电机的表达;无需创建的临时列表。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top