📜  Python|测试元组是否不同

📅  最后修改于: 2022-05-13 01:55:51.365000             🧑  作者: Mango

Python|测试元组是否不同

有时,在处理记录时,我们会遇到一个问题,即我们需要找出元组的所有元素是否都不同。这可以在包括 Web 开发在内的许多领域中应用。让我们讨论可以执行此任务的某些方式。

方法#1:使用循环
这是可以执行此任务的蛮力方式。在这种情况下,我们只是遍历所有元组元素,如果它是第一次出现,则将其放入 set 中。在子序列发生期间,我们检查集合,如果存在,我们返回 False。

# Python3 code to demonstrate working of
# Test if tuple is distinct
# Using loop
  
# initialize tuple 
test_tup = (1, 4, 5, 6, 1, 4)
  
# printing original tuple 
print("The original tuple is : " + str(test_tup))
  
# Test if tuple is distinct
# Using loop
res = True 
temp = set()
for ele in test_tup:
    if ele in temp:
        res = False 
        break
    temp.add(ele)
  
# printing result
print("Is tuple distinct ? : " + str(res))
输出 :
The original tuple is : (1, 4, 5, 6, 1, 4)
Is tuple distinct ? : False

方法 #2:使用set() + len()
在该方法中,我们使用 set() 将元组转换为集合,然后与原始元组长度进行检查,如果匹配,则表示它是一个不同的元组并返回 True。

# Python3 code to demonstrate working of
# Test if tuple is distinct
# Using set() + len()
  
# initialize tuple 
test_tup = (1, 4, 5, 6)
  
# printing original tuple 
print("The original tuple is : " + str(test_tup))
  
# Test if tuple is distinct
# Using set() + len()
res = len(set(test_tup)) == len(test_tup)
  
# printing result
print("Is tuple distinct ? : " + str(res))
输出 :
The original tuple is : (1, 4, 5, 6)
Is tuple distinct ? : True