Herkes genellikle sadece bir karşılaştırma amaçlandığı zaman Python ödevlerde if
tablolarda atamaları engellemek için muhtemelen, bir değer döndürmek olmadığını bilir Aynı ifadedeki ödevler de sözdizimi hatalarıydı.Atama deyimi değeri
>>> a = (b = 2)
File "<stdin>", line 1
a = (b = 2)
^
SyntaxError: invalid syntax
Yani, benim sorum: Aslında
, a = (b = 2)
geçerli bir ifade değil neden Python a = b = 2
eserler o C gibi, atama ifadeleri bir değere sahip diğer dillerde çalışmaktadır olarak?
>>> a = b = c = 2
>>> a, b, c
(2, 2, 2)
Bu davranış belgelendi mi? Ben atama deyimi belgelerinde bu konuda bir şey bulunmadı: http://docs.python.org/reference/simple_stmts.html#assignment-statements