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