我需要解释这个语法,这是否意味着(+4)与(4)相同?我已经尝试了很多其他的操作数,它完全有效,好像我在数字之前忽略了加号。
答案 0 :(得分:4)
你会感到困惑吗
4 > -4
与
之间的唯一区别4 > +4
是一个不同的一元运算符
答案 1 :(得分:3)
+
中的+4
是unary plus operator:
一元
+
(加号)运算符使其数字参数保持不变。
是的,因为4
是一个数字(int
),+4
意味着与4
完全相同,因为运算符返回的数字不变。< / p>
运算符作为-
unary minus operator的对应部分存在:
4 > -4
自定义类可以使用__pos__()
method覆盖它,从而可以返回自定义结果。
答案 2 :(得分:2)
(除了其他答案指出的要点......)
Python have lower precedence中的比较操作比positive
一元运算符(+operand
):
与C不同,Python中的所有比较操作都具有相同的优先级, 低于任何算术,移位或按位 操作
这意味着应用于其操作数的一元加运算符将在比较运算符之前进行求值,并且+4
将导致在一元比较运算开始之前只是4
。
4 < +4
4 < (+4)
4 < 4
答案 3 :(得分:0)
是的,它们实际上是一样的。 +
中的一元+4
运算符已应用于4
,结果为4
。
答案 4 :(得分:0)
要检查变量是否相同,请将它们放入解释器中,并在它们之间使用==运算符。如果它们相同,则返回True。
>>> 4 == +4
True
在这种情况下,这可能看起来很愚蠢或明显,但在处理更复杂的变量时,它会更有用。