我是编码的新手,我不知道如何使用'浮动'。有人可以告诉我在这段代码中使用浮动的地方,以便我不会收到:
break
到目前为止我的代码:
TypeError, 'float' object is not callable.
答案 0 :(得分:2)
问题出在area = (1/2)(b1+b2)*h
。
Python语法与数学不同,一,()用于将参数传递给方法调用。但是,(1/2)返回一个浮点数,因此解释的是一个调用,结果为b1 + b2作为(1/2)的参数。
您只需在公式中插入*
即可使其正确,即将方法调用更改为乘法(为float类型定义)。
因此,固定线为area = (1/2)*(b1+b2)*h
。
另一个问题是,在修复之后你会注意到这是所有变量的实际类型,即b1
,b2
和h
是字符串。要解决这个问题,你需要将它们解析为浮点数:
b1 = float(input("Enter the length of one of your bases: "))
b2 = float(input("Enter the length of one of your bases: "))
h = float(input("Enter the height: "))
Python使用duck typing,因此问题通常会在运行时出现。