我刚刚开始使用python,而且我以前很少有编码经验。
我已经创建了一个简单的程序来计算百分比变化,但是要使用要打印的行我正在尝试稍微复杂一些的东西。
我目前的代码如下:
num1 = float(input("what is the original number?"))
modi = float(input("How much do you want to increase it by?(please use 0.83/1.56 types rather than percentages)"))
ans = num1 * modi
print(ans,"is",modi,"times"if modi > 1 ("greater than")else "less than",num1)
计算工作正常,但每当我集成更高级版本的打印行时,都会出现错误:
TypeError:'int'对象不可调用
我没有看到任何错误,是吗?
答案 0 :(得分:1)
您错误地使用了if
表达式。应该是"greater than" if modi > 1 else "less than"
。通常,表达式的语法是:true_value if condition else false_value
。正如您的代码段中所写,Python将1 ("greater than")
解释为尝试使用参数1()
调用函数"greater than"
,因此抱怨1
无法调用。