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
ていましたが、基本的な実装におけるそれらの違いは何ですか?