def symmetry(x): x = str(x) le = len(x) start = 0 end = le-1 flag = 1 while(start!=end): if(x[start] != x[end]): flag = 0 return flag start += 1 if start == end: flag = 1 return flag end -= 1 return flag for i in range(1,256): s = i*i flag = symmetry(s) if flag: print(i)
注意数的范围是[1,256)
def issymmetrical(a): str_a = str(a) l = len(str_a) half = (l+1)/2 for i in xrange(half): if str_a[i]!=str_a[l-i-1]: return False return True for i in xrange(1, 256): if issymmetrical(i*i): print i