平方根 math.sqrt() 和 cmath.sqrt

math 模組包含 math.sqrt() 函式,可以計算任意數字的平方根(可以轉換為 float),結果將始終為 float

import math

math.sqrt(9)                # 3.0
math.sqrt(11.11)            # 3.3331666624997918
math.sqrt(Decimal('6.25'))  # 2.5

如果結果是 complexmath.sqrt() 函式會提升 ValueError

math.sqrt(-10)              

ValueError:數學域錯誤

math.sqrt(x)math.pow(x, 0.5)x ** 0.5 *快,*但結果的精度是相同的。cmath 模組與 math 模組非常相似,除了它可以計算複數並且其所有結果都是+ bi 的形式。它也可以使用 .sqrt()

import cmath

cmath.sqrt(4)  # 2+0j
cmath.sqrt(-4) # 2j

什麼是 jj 相當於 -1 的平方根。所有數字都可以放入 a + bi 形式,或者在這種情況下,a + bj。a 是真實的一部分,如 2+0j 中的 2。由於它沒有虛部,b 為 0. b 代表數字的虛部的一部分,如 2j 中的 2。由於這裡沒有真正的部分,2j 也可以寫成 0 + 2j