我正在检查一个数字是否是回文。为此,我计算第k个元素等于第(n-k)个元素的次数。如果这个数字等于字符串的长度,那么它就是回文。我得到正确的回文输出,但绝对没有输出(k)时,数字不是回文。参考代码:
T = int(raw_input())
L = []
for i in range(0,T):
alpha = int(raw_input())
L.append(alpha)
print L
for i in range(0,len(L)):
L[i] = str(L[i])
print L
for i in range(0,len(L)):
k = 0
while k < len(L[i]) :
if L[i][k] == L[i][len(L[i])-(k)-1]:
k = k + 1
print k
最佳答案
别用这么复杂的逻辑。使用简单的pythonic[::-1]来反转字符串。
In [1]: a = 1234554321
In [2]: def pal(a):
...: if a == a[::-1]:
...: return True
...: else:
...: return False
...:
In [3]: pal(str(a))
Out[3]: True
关于python - 为什么我的回文集输出正确,而正则数却没有输出?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52912252/