Python中的回文链长度出现错误
我觉得这应该可以正常工作,但是我得到一个错误,计数比应该的少1Python中的回文链长度出现错误,python,count,palindrome,Python,Count,Palindrome,我觉得这应该可以正常工作,但是我得到一个错误,计数比应该的少1 def palindrome_chain_length(n): count = 0 while str(n) != str(n)[::-1] : n = n+n count += 1 else: return count 如果您得到的计数比您想要的少,请从count=1开始。 在我看来,这应该是: n += int(str(n)[::-1]) 而不是: n
def palindrome_chain_length(n):
count = 0
while str(n) != str(n)[::-1] :
n = n+n
count += 1
else:
return count
如果您得到的计数比您想要的少,请从
count=1
开始。
在我看来,这应该是:
n += int(str(n)[::-1])
而不是:
n = n + n
(参见注释@alfasin)。不应该是:
n+=int(str(n)[:-1])
而不是n=n+n
?谢谢@alfasin!你是对的,它应该是n+=int(str(n)[::-1])谢谢,count=1对于已经是回文的数字来说是不正确的,但是你是对的,它是n+=int(str(n)[::-1])再次感谢!不能使用n[::-1],因为int对象不可下标。因此,您必须将其转换为字符串,反转并再次转换。