从2元组python中提取公共元素

时间:2017-09-25 13:02:52

标签: python tuples

我有2个元组A& B.如何提取A& A的共同元素? B组成一个新的元组? 例如:

    A -> (1,'a',(2,'b'),3,'c',4)
    B -> (1,(2,'b'),4,8)
    new_tuple -> (1,(2,'b'),4)

感谢。

2 个答案:

答案 0 :(得分:0)

使用set交集(返回一个新的,其中包含该集合及其他所有元素):

A = (1,'a',(2,'b'),3,'c',4)
B = (1,(2,'b'),4,8)
result = tuple(set(A) & set(B))

print(result)

输出:

(1, 4, (2, 'b'))

https://docs.python.org/3/library/stdtypes.html?highlight=set#frozenset.intersection

答案 1 :(得分:0)

你可以使用set intersection。请注意,这并不能保证元素顺序的任何内容。

>>> A = (1,'a',(2,'b'),3,'c',4)
>>> B = (1,(2,'b'),4,8)
>>> tuple(set(A).intersection(set(B)))
(1, (2, 'b'), 4)