+=
-=
*=
这些符号叫做增量赋值运算符。
a += b
与a = a + b
在结果上是等价的,但是前者的性能更好。
+=
使用的魔法方法是__iadd__
。
拿列表来打比方:
a += b
看成a.extend(b)
,在原有列表上进行扩展
a = a + b
则是,先从原有列表中取出值,放入一个新的列表中进行扩展。
显然,后者的消耗大一些。
所以,在使用中尽量使用增量赋值。
+=
-=
*=
这些符号叫做增量赋值运算符。
a += b
与a = a + b
在结果上是等价的,但是前者的性能更好。
+=
使用的魔法方法是__iadd__
。
拿列表来打比方:
a += b
看成a.extend(b)
,在原有列表上进行扩展
a = a + b
则是,先从原有列表中取出值,放入一个新的列表中进行扩展。
显然,后者的消耗大一些。
所以,在使用中尽量使用增量赋值。