python中的算术,不能算出简单的基本运算

2024-10-01 02:18:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用python做一些非常基本的练习。我使用的是《艰难的方法学习python》一书,在Exersize3中有一个我应该理解的表达式。在

3+2+1-5+4%2-1/4+6,将作为7出来。在

对我来说,答案是6。在

6-5+0-1/4+6

1-1/4+6

6。在

这显然是错误的,但是有谁能在数学等方面帮助我吗?如果不是括号里的话,我好像什么都忘了!在

编辑:非常感谢您的回复。我清楚地了解了一些非常基本的东西,我认为这是重要的,然后再继续!我的行动命令绝对是太离谱了!在


Tags: 方法答案命令编辑表达式错误数学括号
3条回答

请参见Python中的运算符优先顺序表。在

http://docs.python.org/reference/expressions.html#summary

4%2=0,因为4/2的余数是0

1/4也是0,因为它正在进行整数除法,而.25是0的底数。在

如果我们看一下rules for Operator precedence in Python,我们可以看到:

3 + 2 + 1 - 5 + 4 % 2 - 1 / 4 + 6

被视为:

^{pr2}$

(对于算术运算符,这与数学中的standard order of operations的顺序相同。)

现在4 % 2是{},因为4除以2的余数是0。1 / 4也是{},因为Python将返回一个与操作数类型相同的值,当“floored”为0时返回0.25。在

所以我认为你的错误是把/应用到左边的整个表达式。事实上,由于/-具有更高的优先级,计算的除法是1 / 4。在

相关问题 更多 >