我想找到10000到100000之间的所有回文数字,但我得到了这个错误,我读过类似问题的解决方案,但不满意
for i in range(10000, 100000): r=i s=0 k=0 while r>0: d=r%10 s=(s+(d*(10**k))) k+=1 r=r/10 if s==i: a.append(i)
eni9jsuy1#
干得好:
import numpy as np a = np.arange(10000, 100000) boolean_selection = [str(i) == str(i)[::-1] for i in a] res = a[boolean_selection]
ssm49v7z2#
对于这个问题,您根本不需要使用浮点数。你可能不是有意的,但无意中用了它们
r = r / 10
因为这是浮点除法运算符。要从数字中删除最后一位数字,请使用整数除法:
r = r // 10
2条答案
按热度按时间eni9jsuy1#
干得好:
ssm49v7z2#
对于这个问题,您根本不需要使用浮点数。
你可能不是有意的,但无意中用了它们
因为这是浮点除法运算符。
要从数字中删除最后一位数字,请使用整数除法: