課程
/后端開發
/Python
/python進階
為什么 math.sqrt(x) % 1 == 0 可以判斷是不是整數?數學很差,請大神指教
2018-11-05
源自:python進階 2-6
正在回答
因為取模的前提條件是兩邊的操作數必須是整數。
或者還有一種方法(偽代碼):
if( int(num) == num ){...}
歌安
夢編猿 回復 歌安
我覺得用%1==0比較合理,int(math.sqrt(x))相當于強制轉換了
import math
def is_sqr(x):
? ? return math.sqrt(x)%1==0
print filter(is_sqr, range(1, 101))
這樣應該是可以解釋的
開平方之后,對1 取余數, 余數= 0 , 代表可以整除
舉報
學習函數式、模塊和面向對象編程,掌握Python高級程序設計
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2018-11-05
因為取模的前提條件是兩邊的操作數必須是整數。
或者還有一種方法(偽代碼):
if( int(num) == num ){...}
2018-12-21
我覺得用%1==0比較合理,int(math.sqrt(x))相當于強制轉換了
import math
def is_sqr(x):
? ? return math.sqrt(x)%1==0
print filter(is_sqr, range(1, 101))
2018-11-30
2018-11-07
開平方之后,對1 取余數, 余數= 0 , 代表可以整除