【问题标题】:Basic adding multiplying subtracting Python maths [closed]基本加法减法Python数学[关闭]
【发布时间】:2014-11-24 18:31:34
【问题描述】:

所以我想让用户使用

输入一个数字
input = raw_input ("What is your number")

然后这个数字假设 5 完成了以下操作

result = input + 3 then * 2 then - 4 then - (2 * input) then + 3

所以在我的 5 示例中,以下将是数学链

5 : 8 : 16 : 12 : 2 : 5

最后是打印声明

print "Your answer is: " + result

我在我的 Mac 上的终端中完成这一切,并使用 nano 作为文本编辑器,我尝试了多种方法,例如稍后将每个数字分配给一个变量,然后只使用字母,当然还有很明显的插入方式数字,但我总是得到一个错误。

这是我尝试过的代码部分之一

    #!usr/bin/env

a = 6
b = 3
c = 2
d = 4

sum = ((((a + b) * c) - d)( - ( c * a )) + b)

print sum

然后将文件保存为 .py 文件和整个 chmod +x filename.py 然后是 python filename.py 并且总是错误,对于上面的示例我得到

TypeError: 'int' object is not callable

【问题讨论】:

  • 你是不是少了一个运算符... ((((a + b) * c) - d) 这里? ( - ( c * a )) + b)
  • Python 认为(expression1)(expression2) 是对expression1 的调用,参数为expression2,如果您需要乘法,请使用(expression1) * (expression2)。可能是笔误。
  • 不要使用suminput 作为变量名,否则将是另一个问题

标签: python int sum add


【解决方案1】:

让我们分解一下这个异常:TypeError: 'int' object is not callable “可调用”表示您试图在不支持它的对象(不是函数的对象)上调用函数(或调用方法)。在这种情况下,它表示“int”。

您可能知道,代码中的方程式从左到右解析,因此左括号集:((((a + b) * c) - d) 产生整数 (14),右括号集也产生一个整数。 正如我之前的人所提到的,问题是你忘记了运算符 (*),而不是这个:14 * (-9),结果是这样的:14(-9),这是正确的语法,如果您正在尝试使用参数 -9 调用名为 14 的函数。

【讨论】:

    【解决方案2】:
    sum = ((((a + b) * c) - d)( - ( c * a )) + b)
                              ^ You need an operation to occur here before the parenthesis
    

    你在等式中遗漏了一个算术符号。

    现在,它正在尝试使用方程的第一个名称调用一个函数。

    【讨论】:

      猜你喜欢
      • 2012-11-09
      • 1970-01-01
      • 1970-01-01
      • 2014-08-10
      • 2021-10-04
      • 2014-12-18
      • 1970-01-01
      • 2011-04-30
      • 2015-12-04
      相关资源
      最近更新 更多