我只是刚开始使用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”对象不可调用
我没看错,可以吗?
最佳答案
您错误地使用了if
表达式。应该是"greater than" if modi > 1 else "less than"
。通常,表达式的语法为:true_value if condition else false_value
。正如您的代码片段中所写,Python将1 ("greater than")
解释为试图使用参数1()
调用函数"greater than"
的尝试,因此关于1
的投诉不可调用。