python程序将2个元组作为参数,并返回一个排序的元组,其中包含在这两个元组中找到的元素

python程序将2个元组作为参数,并返回一个排序的元组,其中包含在这两个元组中找到的元素,python,tuples,Python,Tuples,我的代码: def commonElements(t1 ,t2): t1 = sorted(t1) t2 = sorted(t2) t3 = set([]) for i in t1: for j in t2: if i == j: t3.add(i) return t3 print commonElements((1, 2, 3), (2, 5, 1)) 对于上述代码,我的输出

我的代码:

def commonElements(t1 ,t2):
    t1 = sorted(t1)
    t2 = sorted(t2)
    t3 = set([])
    for i in t1:
        for j in t2:
            if i == j:
               t3.add(i)
        return t3
print commonElements((1, 2, 3), (2, 5, 1))
对于上述代码,我的输出为:

set([1, 2])
预期应为:

  (1, 2)

常用元素以集合的形式打印。如何将set转换为tuple???

我将把这两个参数转换为Python的
set
类型,然后在两个集合之间使用set交集操作符。之后,可以根据需要将结果强制转换为元组

def commonElements(t1 ,t2):
    return tuple(set(t1) & set(t2))
根据您的示例:

>>> commonElements((1, 2, 3), (2, 5, 1))
(1, 2)

我会将这两个参数转换为Python的
set
类型,然后在两个集合之间使用set intersection操作符。之后,可以根据需要将结果强制转换为元组

def commonElements(t1 ,t2):
    return tuple(set(t1) & set(t2))
根据您的示例:

>>> commonElements((1, 2, 3), (2, 5, 1))
(1, 2)

在您的示例中,需要返回排序的元组。我将添加到@gsi frank的答案
sorted()
方法中

def commonElements(t1, t2):
    return tuple(sorted(set(t1) & set(t2)))

在您的示例中,需要返回排序的元组。我将添加到@gsi frank的答案
sorted()
方法中

def commonElements(t1, t2):
    return tuple(sorted(set(t1) & set(t2)))

只有两个或两个以上的元组。?
var=((1,2,3)、(2,5,1))
tuple(set(var[0])。intersection(var[1]))
只有两个或两个以上的元组。
var=((1,2,3)、(2,5,1))
元组(set(var[0])。intersection(var[1]))
请尽可能避免发布仅是代码的答案。随代码一起解释代码的作用和工作原理。@ZachGates Done boss;)如果可能,请避免发布仅为代码的答案。随代码一起解释代码的作用和工作原理。@ZachGates Done boss;)