Python Logarithm, Value Error : math domain error
Python Logarithm, Value Error : math domain error
我正在使用 python 学习数学,当我尝试使用此代码求对数时出现此错误,有什么帮助吗?
import math
n = 1000000
n2 = 0
for i in range(n):
x = math.log2(i)
n2 += x
print(n2)
它给我一个值错误:
"ValueError: math domain error"
范围(n)是从0到n-1
但是 Log(0) 没有定义,因此使用 range(1,n) 代替。
您正在计算 log2(0)
,即 - inf
。因此你得到了错误。试试 range(1,n)
.
import math
n = 1000000
n2 = 0
for i in range(1,n):
x = math.log2(i)
n2 += x
print(n2)
编码愉快!
我正在使用 python 学习数学,当我尝试使用此代码求对数时出现此错误,有什么帮助吗?
import math
n = 1000000
n2 = 0
for i in range(n):
x = math.log2(i)
n2 += x
print(n2)
它给我一个值错误: "ValueError: math domain error"
范围(n)是从0到n-1 但是 Log(0) 没有定义,因此使用 range(1,n) 代替。
您正在计算 log2(0)
,即 - inf
。因此你得到了错误。试试 range(1,n)
.
import math
n = 1000000
n2 = 0
for i in range(1,n):
x = math.log2(i)
n2 += x
print(n2)
编码愉快!