ホームページ >バックエンド開発 >Python チュートリアル >Pythonの代入ステートメントとは何ですか?

Pythonの代入ステートメントとは何ですか?

silencement
silencementオリジナル
2019-06-06 17:45:1920884ブラウズ

Pythonの代入ステートメントとは何ですか?

代入ステートメント
Python では、主な代入演算子は等号 (=) です。
代入では変数に値を直接代入しません。 . オブジェクトは参照によって渡されます。変数が新しく作成されたか、すでに存在しているかに関係なく、オブジェクトへの参照が変数に割り当てられます。

C 言語では、代入文を式とみなして値を返すことができます。ただし、Python では、代入ステートメントは値を返しません。これにより、そのようなステートメントは不正になります

>>> y = (x = x + 1) # assignments not expressions! File "<stdin>", line 1y = (x = x + 1)^SyntaxError: invalid syntax>>> if (a = 3):

SyntaxError: invalid syntax

通常の代入と比較すると、これは単なる記述の変更ではなく、最も重要な変更は、最初のオブジェクトが 1 回だけ処理されることです。
Python は、x や --xx などの前後のインクリメント/デクリメント操作をサポートしていません。
複数の代入

>>> x, y, z = 1, 2, &#39;a string&#39;>>> x1
>>> y2
>>> z&#39;a string&#39;>>> x, y, z
(1, 2, &#39;a string&#39;)

代入する場合、等号の両側のオブジェクトはこれらはすべてタプルとみなされます

多重代入の方法を使用すると、中間変数を使用せずにテーブルの値を直接交換できます

>>> x , y = 1, 2
>>> x, y
(1, 2)>>> x, y = y, x>>> x, y
(2, 1)

次のテーブルはコピー操作とアノテーションです

#操作方法説明a=10基本形a,b = 10,20タプル代入[a,b] = [10,20]リスト割り当て(位置)a,b = 'AB'シーケンス割り当て(一般)a ,b = [10,20]シーケンスの割り当て (一般性)a,*b = 'hello'拡張シーケンスのアンパッキング (python3)中固有)a = b = c = 10複数のターゲット割り当てa = 1拡張された割り当て

以上がPythonの代入ステートメントとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。