我正在进行一些Python活动,并为此操作符提供了示例代码: y *= -1
我浏览了相关的Python文档,但无济于事。
我知道y += 1
,例如,是的缩写y = y + 1
。那么,这个y = y * -1
y是否等于y的-1倍?
在Python文档我能找到最近的事情是这样的:x * y
: x和y的产品
是这个吗?
在绝大多数情况下
y *= <expr>
是相同的
y = y * <expr>
但在一般情况下,它解释为:
y = imul(y, <expr>)
这等效于:
y = y.__imul__(<expr>)
如果y
的类型覆盖__imul__
。
这意味着ify
的类型将覆盖 inplace 乘法运算符,y*=<expr>
则在 inplace
中执行,而y=y*<expr>
在not中执行。
编辑
可能尚不清楚为什么需要分配,即为什么将其解释为y = imul(y, <expr>)
,而不仅仅是imul(y, <expr>)
。
原因是在以下两种情况下得出相同的结果非常有意义:
c = a * b
和
c = a
c *= b
现在,如果a
和b
属于相同类型(例如,浮点数,numpy数组等),这当然可以工作,但是如果不相同,则运算结果可能具有的类型b
,在这种情况下操作不能是的就地操作a
,因此需要将结果分配给a
,以实现正确的行为。
例如,这要感谢分配:
from numpy import arange
a = 2
a *= arange(3)
a
=> array([0, 2, 4])
而如果分配被放弃,则a
保持不变:
a = 2
imul(a, arange(3))
=> array([0, 2, 4])
a
=> 2
问题内容: 除了标准,,和运营商; 但什么是这些均值(,,,)? 又如何操作? in返回正常的余数模量,但是仅当,为什么会这样?怎么办? 又如何操作?它有什么作用? 问题答案: :求幂 :异或(按位) :模数 :除以积分结果(舍弃余数)
问题内容: 这些不同的运算符做什么? 问题答案: <<, >> 分别向左和向右移位]。如果想象左操作数作为位的二进制序列,你正在移那些向左或向右的比特数指示由右操作数。 它们分别是按位 和 , xor和或。你能想到的,并为同行和,但他们会将自己的操作数为位向量,并在每个位执行逻辑运算。没有运算符,但是此运算是“xor”或“exclusiveor”。您可以将“ a xorb”视为“ a或b,但不能同
问题内容: 我最近遇到了以下代码: 这是什么,某种反向双λ? 问题答案: 没有操作员。第一个只是Java 8中引入的lambda语法,第二个是误导性的“小于” 和“一元减”的串联。 您可以将其读取为,即它会测试是否小于,所有(很好,大多数)负数就是这种情况,因此命名为。 仅出于完整性考虑:此测试不仅(有意地?)难以理解,而且-如评论中所指出- 也因(而)失败。相反,您可能应该只使用简单得多的。
问题内容: 我是一个仅出于乐趣而编写代码的人,并且在学术或专业环境中都没有真正地去研究它,所以像这些按位运算符之类的东西真的让我感到困惑。 我正在阅读一篇有关JavaScript的文章,该文章显然支持按位操作。我一直看到该操作在某些地方提到过,并且我尝试阅读以弄清楚它到底是什么,但是我似乎一点也不了解。那是什么 清楚的例子会很棒!:D 再问几个问题-按位运算的一些实际应用是什么?您什么时候可以使用
本文向大家介绍JavaScript中的运算符是什么?,包括了JavaScript中的运算符是什么?的使用技巧和注意事项,需要的朋友参考一下 让我们采用一个简单的表达式“ 4 + 5等于9”。这里4和5称为操作数,“ +”称为运算符。 JavaScript支持以下类型的运算符。 算术运算符 比较运算符 逻辑(或关系)运算符 赋值运算符 条件(或三元)运算符 例 这是一个说明运算符示例的示例-
问题内容: 我已经使用Java几年了,但是直到最近我还没有遇到过这种构造: 这可能是一个非常简单的问题,但是有人可以解释吗?我该如何阅读?我很确定我知道它是如何工作的。 如果isHere为真,getHereCount()则称为 如果isHere为假,getAwayCount()则调用。 正确?这个结构叫做什么? 问题答案: 是的,它是 它称为条件运算符。许多人(错误地)将其称为三元运算符,因为它是
问题内容: 我正在处理由以前的开发人员编写的代码,并在查询中说: 这个查询是什么意思?等于吗?还是语法错误? 但是它没有显示任何错误或异常。我已经知道= 在MySQL的。 问题答案: TL; DR 这是安全的相等运算符。 像常规运算符一样,将两个值进行比较,结果为(不相等)或(相等);换句话说:yields 和yields 。 与常规运算符不同,of的值没有特殊含义,因此它永远不会产生可能的结果。
问题内容: 我很困惑,在Google中找不到。谁能告诉我操作员名称是什么? 问题答案: 不等于,等于