python - 检查输入中的数字是否不同
问题描述
我需要检查数字中的所有数字是否不同。
即: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”之类的输入被视为“列表中的所有元素都不相等”。
解决方案
不是最有效的,但您可以转换为设置并检查长度是否相等。集合存储唯一元素,使其按预期工作。
def is_unique_number(number):
num_str=str(number)
if len(num_str) == set(num_str):
return True
return False
推荐阅读
- python - Python方法来删除指定标签内的任何文本
- python - tf.print 何时会按预期实际工作(即打印张量和变量的值)?
- css - 如何合并这两个css代码
- javascript - 在 href 中嵌入 var 文本值
- python - 使用 while 循环循环存储 my_list 的单词列表并打印首字母为“A”或“a”的每个单词的最后一个字母
- php - 从 1 个 PHP 注册表单中插入 2 个表格?
- java - 创建新对象时找不到符号错误。在 Eclipse 中不会出错,仅在 Mac OS 的终端中
- java - 程序不断循环
- android - 防止 Fragment 跳转到 Recyclerview 顶部
- validation - Parsley.js 专注于验证 div 错误