Я столкнулся с чем-то интересным в дополнении Python +=
кажется, что автоматическое преобразование типов данных не всегда выполняется для a += b
, если a - более простой тип данных, тогда как a = a + b
, кажется, работает всегда
случаев, когда преобразование сделано
a = 1
b = 1j
a = 1
b = 0.5
случай, когда преобразование не выполнено
from numpy import array
a = array([0, 0 ,0])
b = array([0, 0, 1j])
после a += b
, a
остается в виде целочисленной матрицы вместо комплексной матрицы
Раньше я думал, что a += b
совпадает с a = a + b
, в чем их отличие в базовой реализации?