大神们,新手小白一个,请教为何执行以下代码时候打印不出来 i=0 while i <=1000: if isinstance((i+100)**0.5,int)==True and isinstance((i+268)**0.5,int)==True: print(i) i+=1
因为(i+100)**0.5永远都不会是整型,可以改成
((i+100)**0.5)*10%10==0
这是因为a**0.5出来的都是浮点数。
把int改成float i = 0 while i <= 1000: if isinstance((i + 100) ** 0.5, float) == True and isinstance((i + 268) ** 0.5, float) == True: print(i) i += 1