用語比較
セイウチ演算子 := と代入文 = の違い|式の中での代入をPython3エンジニア認定基礎試験で判断する
代入文 = は、文として値を名前に結びつけます。セイウチ演算子 := は、式の中で代入を行い、代入した値をそのまま式の値として返します。公式チュートリアル5.7は、Pythonでは式の中での代入はセイウチ演算子 := を使って明示的に行う必要があると述べています。
Python 3 エンジニア認定基礎試験では、式の中で代入するにはどの演算子を使うか、= と := のどちらが条件式の中で書けるか、なぜ明示が要るのかを選ぶ問題が想定されます。条件式の演算子(in・is・and・or・not)と同じ章で出るため、まとめて確認します。
このページは、= と := を「どちらも代入」とだけ覚えている人を対象にしています。書ける場所、式としての値、書き間違いを防ぐ仕組みという3つの軸で、公式チュートリアルの記載と手元での実行結果を整理します。
この記事の目次
この記事の根拠と出典
各セクションの見出しの下に、公式資料で確認した内容か編集部の整理かをラベルで示しています。 試験日・料金・申込条件・試験方式は変わることがあるため、申込前に公式サイトで確認してください。Python3エンジニア認定基礎試験の一次情報確認日: 2026-09-18。
結論
代入文 =
文として値を名前に結びつける。if の条件の中に書くとSyntaxErrorになる。
セイウチ演算子 :=
式の中で代入を明示的に行う。代入した値が式の値になる。Cの = と == の取り違えのような問題を避けられる。
違いを表で確認
| 比較軸 | 代入文 = | セイウチ演算子 := |
|---|---|---|
| 書ける場所 | 文として単独で書く。if の条件式の中には書けない | 式の中に書ける。if や while の条件の中でも使える |
| 式としての値 | 代入文は値を返す式ではない | 代入した値がそのまま式の値になる |
| 公式チュートリアルの位置づけ | 従来の代入として、特別な説明なしに使われる | 5.7で「式の中での代入はセイウチ演算子 := を使用して明示的に行う」と説明される |
| 書き間違いの防止 | 条件の中に = を書くとSyntaxErrorになり、== との取り違えに気づける | 式の中での代入が明示的なので、== のつもりで = を書く誤りと混ざらない |
| 選択肢で探すキーワード | 代入文、変数に値を結びつける | セイウチ演算子、:=、式の中での代入 |
Python3エンジニア認定基礎試験の学習に使う書籍(Amazon)
試験範囲を通して読むときの1冊です。読んだ章は、このサイトの章別問題で確かめられます。
どこで迷っているかを切り分ける
条件式の中でも = で代入できると考える人
公式チュートリアル5.7は、Pythonでは式の中での代入はセイウチ演算子 := で明示的に行うと説明しています。Python 3.9.6で if n = 3: と書くとSyntaxErrorになります。
:= を単独の文として書こうとする人
Python 3.9.6で x := 5 だけを書くと、SyntaxErrorになります。式の値を使う場所で、(x := 5) のように丸括弧で囲んで書きます。
== と := の見た目が似ていて取り違える人
== は値が等しいかを調べる比較で、:= は右辺の値を左辺の名前に代入します。比較だけをしたいところに := は書きません。
問題文から答えを選ぶ手順
- 1
書く場所が文か式かを確認する
条件式や式の途中なら、代入には := を使います。単独の文なら = です。
- 2
代入した値をその場で使うかを確認する
(n := len(a)) > 3 のように、代入と同時に比較などに使うなら := です。
- 3
丸括弧の有無を確認する
x := 5 を単独の文にするとSyntaxErrorです。(x := 5) のように丸括弧で囲めば式になります。
- 4
比較なのか代入なのかを確認する
== は比較、:= は代入です。公式チュートリアルは、:= を明示することで == が意図されていたところに = を入力する問題を避けられると説明しています。
試験での見分け方
- 1式の中での代入にはセイウチ演算子 := を使う。
- 2公式チュートリアル5.7は、Cとは異なり、式の中での代入を明示的に行う必要があると述べている。
- 3条件の中に = を書くとSyntaxErrorになり、== との書き間違いは検出される。
- 4(y := 10) + 1 は11になり、y には10が入る。代入した値が式の値になる。
- 5x := 5 を単独の文にするとSyntaxErrorになる。
誤答しやすい選択肢
if の条件の中で = を使えば代入できると考える
修正: Python 3.9.6で if n = 3: はSyntaxErrorです。式の中での代入には := を使います。
:= を == の代わりに比較に使う
修正: := は代入です。比較は == です。Python 3.9.6で if (n := len(a)) > 3: は、n に4を代入したうえで、その値が3より大きいかを調べます。
x := 5 を普通の代入文として書く
修正: Python 3.9.6で x := 5 だけを書くとSyntaxErrorです。単独の文として代入するなら x = 5 と書きます。
セイウチ演算子がC言語と同じ書き方で使えると考える
修正: 公式チュートリアルは、Cとは異なり、式の中での代入は := で明示的に行う必要があると述べています。= を式の中に書くことはできません。
確認問題
Q1式の中で代入を行うための演算子は?
答え: セイウチ演算子 :=
公式チュートリアル5.7は、Pythonでは式の中での代入はセイウチ演算子 := を使用して明示的に行う必要があると説明しています。
Q2a = [1, 2, 3, 4] のとき、if (n := len(a)) > 3: print(n) の出力は?
答え: 4
len(a) の結果4が n に代入され、同時に式の値として3と比較されます。条件が真になり、n の値4が出力されます。
Q3(y := 10) + 1 を評価した結果と、そのあとの y の値は?
答え: 式の結果は11、y は10
:= は代入した値10を式の値として返すので、10 + 1 で11になります。y には10が残ります。
Q4公式チュートリアルが、式の中での代入を := で明示させる利点として挙げているのは?
答え: == が意図されていたところに = を入力してしまう、Cプログラムで発生する一般的な問題を避けられること
公式チュートリアル5.7は、この理由を直接書いています。
到達チェック
- 式の中での代入に := を使うと言える
- := が代入した値を式の値として返すと説明できる
- 条件の中の = がSyntaxErrorになることを知っている
- == は比較、:= は代入と区別できる
関連ページで確認する
同じ資格で次に知りたいこと
- dataclassと通常のクラスの違い|データをまとめるクラスの書き方をPython3エンジニア認定基礎試験で判断する
dataclassと通常のクラスの違いを、公式チュートリアル9.7が示す名前付きのデータ項目をまとめる書き方、__init__を書く手間、print表示と==の結果、型注釈の扱いまで、Python 3 エンジニア認定基礎試験での判断手順と確認問題つきで解説します。
- jsonとpickleの違い|保存できる範囲と安全性をPython3エンジニア認定基礎試験で判断する
jsonとpickleの違いを、公式チュートリアル7.2.2が示す扱えるオブジェクトの範囲、他の言語との通信、信頼できないデータを読み込む危険性、dump()・dumps()・load()の使い分け、Python 3 エンジニア認定基礎試験での判断手順と確認問題まで解説します。
- 位置専用引数とキーワード専用引数の違い|/と*の位置をPython3エンジニア認定基礎試験で判断する
位置専用引数とキーワード専用引数の違いを、公式チュートリアルの/と*の書き方、pos_only_argとkwd_only_argの呼び出し例とTypeError、使い分けのガイド、Python 3 エンジニア認定基礎試験での判断手順と確認問題まで解説します。
よくある質問
Qセイウチ演算子とは?
式の中で代入を行う演算子 := です。公式チュートリアル5.7が、式の中での代入は明示的に行う必要があると説明する箇所で使われています。
Q= と := はどちらを使えばいい?
単独の文として代入するなら = です。条件式など式の中で代入するなら := です。
Qなぜ式の中の代入を := で明示させるの?
公式チュートリアルは、== が意図されていたところに = を入力してしまう、Cプログラムで発生する一般的な問題を避けられると説明しています。
Q:= は丸括弧が必要?
Python 3.9.6で x := 5 を単独の文にするとSyntaxErrorです。(x := 5) のように丸括弧で囲めば式になります。
次に見る比較
- G検定・DS検定・統計検定2級で重なる用語10語の比較
同じ名前の用語の定義と収録章を、資格ごとに並べます。
- ベイズの定理と条件付き確率の違い(統計検定2級の式と計算例)
求める確率の向きの違いと、陽性になる確率の計算例を確かめます。
- 紛らわしい用語ペア早見表
混同しやすい用語の違いと判定の手掛かりを、資格別の一覧で確かめます。
執筆: ミナト編集部(運営者情報を見る)
