在python列表中查找元组中的唯一元素

tin*_*net 3 python tuples list set

有没有更好的方法在python中执行此操作,或者更确切地说:这是一个很好的方法吗?

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

l = [x, y, z]

s = set([e for (_, e, _) in l])
Run Code Online (Sandbox Code Playgroud)

我看起来有些难看,但是在没有编写复杂的"get_unique_elements_from_tuple_list"函数的情况下做了我需要的...;)

编辑:设置s的期望值(['b','e'])

bal*_*pha 22

那没关系,这就是套装的用途.我要改变的一件事是:

s = set(e[1] for e in l)
Run Code Online (Sandbox Code Playgroud)

因为它增强了可读性.请注意,我还将列表推导转换为生成器表达式; 无需创建临时列表.