1. 程式人生 > 程式設計 >解決python中的冪函式、指數函式問題

解決python中的冪函式、指數函式問題

最近在調程式碼,碰到冪函式、指數函式,總是提示

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中的冪函式、指數函式問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。