pythonでの多重付与の問題と注意
634 ワード
1、多重賦課
結論:変数aとbは同時に新しい値0と1を得た.
2、多重賦課の順序問題
出力結果:
===================================================================================
出力結果:
説明等号の右側の式は、値を割り当てる前に完全に解析されます.右式は左から右に計算されます.付与が完了する前に、a+bの動作は式の計算結果を完了したので、a,b=b,a+bをa=bに等しくすれば、b=a+bは完全に正しくない.
=============================================================================右の式を左から右に計算
a, b = 0, 1
結論:変数aとbは同時に新しい値0と1を得た.
2、多重賦課の順序問題
x = [0, 1]
i = 0
i, x[i] = 1, 2
print(x)
出力結果:
[0, 2]
===================================================================================
a, b = 0, 1
while b < 10:
print(b)
a, b = b, a + b
出力結果:
1
1
2
3
5
8
説明等号の右側の式は、値を割り当てる前に完全に解析されます.右式は左から右に計算されます.付与が完了する前に、a+bの動作は式の計算結果を完了したので、a,b=b,a+bをa=bに等しくすれば、b=a+bは完全に正しくない.
=============================================================================右の式を左から右に計算