首页 > 解决方案 > 检查输入中的数字是否不同

问题描述

我需要检查数字中的所有数字是否不同。

即:123 - 会被视为“不同”,但 121 不会因为第一项等于最后一项。

这是我想出的:

n = int(input("Enter number of elements : ")) 

a = list(map(int,input("\nEnter the numbers : ").strip().split()))[:n] 

print("\nList is - ", a)

result = False;

if len(a) > 0 :
    result = all(elem == a[0] for elem in a)

if result :
     print("All Elements in List are Equal")
else:      
    print("All Elements in List are Not Equal")

但是,不幸的是,诸如“1,2,1”之类的输入被视为“列表中的所有元素都不相等”。

标签: pythonalgebra

解决方案


不是最有效的,但您可以转换为设置并检查长度是否相等。集合存储唯一元素,使其按预期工作。

def is_unique_number(number):
    num_str=str(number)
    if len(num_str) == set(num_str):
        return True
    return False

推荐阅读