题目描述
打印所有不超过n(n<256)的,其平方具有对称性质的数。如:
11*11=121
121*121=14641
...
代码实现,使用了列表推导式:
print('\n'.join([str(i)for i in range(1, 256) if str(i * i)[::-1] == str(i * i)]))
拆分后为:
for i in range(1, 256):
if str(i * i)[::-1] == str(i * i):
print(i)
最后输出结果为:
1
2
3
11
22
26
101
111
121
202
212
大体思想就是将每个数自己乘自己,然后转换成字符串,最后将字符串逆置和原来的字符串相等则输出该数。