解決python中的冪函式、指數函式問題
阿新 • • 發佈:2020-01-09
最近在調程式碼,碰到冪函式、指數函式,總是提示
ValueError: math domain error
ValueError: negative number cannot be raised to a fractional power
這些異常、錯誤,
發現裡邊有很多細節問題:
python中,想要表示a的b次方時,有兩種方法:
1,math.pow()這個內建函式
2,**運算子
這兩種方法效果是一樣的,但是當
b為分數,a為負數:當冪運算子的底數為負數、冪為分數時,Python會丟擲ValueError: negative number cannot be raised to a fractional power異常,
這時有兩種方法可以解決此問題:
1,底數a正負均可不影響你的演算法的話,加一個絕對值就行了即abs(a);
2,如果底數a必須是正、或必須是負的話,需要採用複數進行運算。因此凡是遇到冪為分數的項,都將底數用complex()轉換為複數。
以上這篇解決python中的冪函式、指數函式問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。