检查输入的数字是否不同[重复]

问题描述 投票:-3回答:1

此问题已经在这里有了答案:

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

即: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”的输入被视为“列表中的所有元素都不相等”。

python algebra
1个回答
0
投票

不是最有效的方法,但是您可以转换为set并检查长度是否相等。集合存储唯一元素,因此它将按预期工作。

def is_unique_number(number):
    num_str=str(number)
    if len(num_str) == set(num_str):
        return True
    return False
© www.soinside.com 2019 - 2024. All rights reserved.