【问题标题】:Negative one to the power of two question - i.e. (-1)**2 [duplicate]两个问题的幂的负一 - 即 (-1)**2 [重复]
【发布时间】:2021-06-06 14:44:16
【问题描述】:

谁能解释一下Python中这两个表达式的区别:

(-1)**2 == 1
-1**2 == -1

为什么括号会改变结果?

【问题讨论】:

  • 仔细检查一元 -** 运算符的运算符优先级。
  • Python先根据算子优先级计算幂,然后-
  • 这是一道数学题,不适合编码。
  • 两个方程在计算器上的结果都是 1。正如其他答案所示,这是因为 python 完成 ** 运算符然后解释 - 之后的方式。因此这是一个 python 问题。
  • 查看operator precedence上的文档。

标签: python algebra


【解决方案1】:

括号表示里面的整个值是2的幂。

(-1)**2 == 1

所以-1*-11 没有括号意味着- 将从等式中取出并添加到答案的末尾。

1) -1**2
2) 1**2 
3) 1
4) -1

Python 以与世界相同的方式处理这个问题 :)

【讨论】:

    猜你喜欢
    • 2017-12-03
    • 2023-03-05
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-22
    • 1970-01-01
    • 2018-12-17
    相关资源
    最近更新 更多