我一直得到TypeError:'float'对象不可订阅 想知道为什么
from math import log
class Logarithm(object):
def __init__(self, base = 0, number= 0):
self.base = float(base)
self.number = float(number)
the_logarithm = log(self.base[self.number])
def __str__(self):
return 'Your log = {}'.format(the_logarithm)
答案 0 :(得分:2)
因此:
log(self.base[self.number])
你想在这里完成什么? self.base
是一个浮点数,因此该语句被评估为“number
”的base
元素,而Python无法做到这一点。
答案 1 :(得分:2)
Cameron Sparr的回答是正确的。
您应该重新检查help(math.log)
。
它是
log(x[, base]) -> the logarithm of x to the given base.
意味着base参数是可选的(默认为e
)
而不是log(x[base])