Python 在数字变量中搜索相同的数字
如果我有一个像这样的数字:Python 在数字变量中搜索相同的数字,python,Python,如果我有一个像这样的数字: 1234567899 or 1999234567 or 1294597890 or 9234967890 每当一个数字在数字中出现不止一次时,我想打印“Test”。您可以将整数转换为字符串,这将允许逐个处理其字符。然后,您可以使用集合跟踪看到的数字 对于非常大的数字,这将比计算数字更有效,因为您可以确保它总是在第十一位之前返回 def has_duplicate_digit(x): digits = set() for d in str(x):
1234567899
or
1999234567
or
1294597890
or
9234967890
每当一个数字在数字中出现不止一次时,我想打印“Test”。您可以将整数转换为字符串,这将允许逐个处理其字符。然后,您可以使用
集合
跟踪看到的数字
对于非常大的数字,这将比计算数字更有效,因为您可以确保它总是在第十一位之前返回
def has_duplicate_digit(x):
digits = set()
for d in str(x):
if d in digits:
return True
digits.add(d)
return False
例子
要检查整数是否以10为基数包含9?不仅包含9,还包含多个相同的数字。只基于10,所以是的。你尝试过什么吗?是的,我尝试过一些方法,比如在循环中逐个检查,但是使用set()作为解决方案-我从来没有想过。所以,很抱歉,如果这是一个重复的问题,但我认为它不是完美的!谢谢
print(has_duplicate_digit(123)) # False
print(has_duplicate_digit(11)) # True