2 回答

TA貢獻(xiàn)1963條經(jīng)驗 獲得超6個贊
最后一個 return 語句應(yīng)該在循環(huán)之外。下面是正確的代碼:
def double_digits(n, d):
while n > 0:
remainder = n % 10
n = n // 10
if remainder == d:
if n % 10 == d:
return True
else:
remainder, n = n % 10, n // 10
return False

TA貢獻(xiàn)1797條經(jīng)驗 獲得超6個贊
您必須取消縮進(jìn)最后一個語句:return False,左邊 4 個空格。那一定對你有幫助。
或者,您可以將輸入轉(zhuǎn)換為字符串,然后字符匹配就很容易了。
def double_digits(n: int, d: int)->bool:
n = str(n)
d = str(d)
i = 0
while i < len(n)-1:
if n[i] == d and n[i+1] == d:
return True
i+=1
return False
在這里,我使用了一些內(nèi)置函數(shù),例如lenand str,但是如果您明確
想避免使用它們,只需使用您原來的方法并只取消縮進(jìn) return 語句一次
添加回答
舉報