未分類

pythonで+=の使い方と注意点総まとめ|初心者向け演算子解説と実践活用例

Pythonで変数の値を効率よく更新したい――そんなとき、+= 演算子の使い方に戸惑ったことはありませんか?実際、検索上位10サイトのうち8割以上が「+=」の基本やバグ事例、パフォーマンス比較に言及しており、初心者から実務エンジニアまで幅広く注目されています。

「+=」は単なる省略記法ではなく、数値のカウンタ、文字列の連結、リストの拡張など幅広い場面で活躍します。 しかし、mutableとimmutableの違いによる副作用や、反復処理でのパフォーマンス劣化など、見落としがちな落とし穴も少なくありません。たとえば、文字列連結では「join」との速度差が10倍以上になることも確認されています。

この記事では、実際のバグ事例や最適化テクニック、型ごとの注意点を具体的なコードとともに徹底解説。現場のエンジニアやPython講師の経験もふまえ、「なぜそうなるのか」「どうすれば安全か」を根拠とともに示します。

今のうちに正しい「+=」の使い方を知っておけば、予期せぬバグや無駄な修正コストを防ぎ、Pythonプログラミングの生産性が大きく向上します。 あなたも、次のセクションから実例とともにスムーズに理解を深めてください。

  1. Python += の基礎(意味・構文・最短理解)
    1. += の定義と等価表現(x += y と x = x + y の関係)
    2. += が使われる典型的な場面(カウンタ・累算・ログ組立て)
    3. 実行時の基本挙動(評価順・代入のタイミング)
  2. 複合代入演算子一覧と比較(+=, -=, =, /=, //=, *=, &=, |=, ^= など)
    1. 各複合代入演算子の意味と短い使用例
    2. 複合代入と単純代入の振る舞い比較(動作差・副作用の有無)
    3. 演算子優先順位と組合せで発生する注意点
  3. 型ごとの実践活用(文字列・リスト・辞書・NumPy配列)
    1. 文字列での+=:挙動・パフォーマンス・代替(join)
    2. リストでの+=:append/extendとの違い、参照の扱い
    3. 辞書・集合・その他の型での取り扱い(可否と回避策)
    4. NumPy・pandas などでの +=:ブロードキャストとメモリ効率
  4. バグ事例・落とし穴とその具体的な対処法
    1. よくあるバグパターンの再現コードと原因分析 – 初心者が遭遇しやすい5つの典型例(型の不一致、参照副作用、意図しない拡張、優先順位ミス、イミュータブル誤解)
    2. 各バグに対する具体的な修正パッチ(コード差分で示す) – 修正前/修正後を短く示し、なぜ安全になるかを説明。
    3. テスト・デバッグの実践テクニック(小さな単体テスト例) – 簡単なassertやpytestの1~2行テストで防げる例を提示。
  5. パフォーマンス最適化とベンチマーク指針
    1. 文字列連結:+= vs join のベンチマークと推奨基準
    2. リスト・配列操作の効率化テクニック
    3. 実測で確認する方法(timeit を使った簡易ベンチマーク手順)
  6. 応用例:アルゴリズム・データ処理・実務での利用シーン集
    1. ループ内累算・集計(頻出パターンと最適実装)
    2. ログ/メッセージ組立て・ストリーム処理での使い方
    3. データ分析・機械学習での+=活用(pandas, numpy の実務例)
  7. よくある質問(記事内Q&A形式)と学習を加速する演習問題
    1. 質問集(厳選10問)と1行回答+参照コード
    2. 演習問題(入門→中級→上級:計6問)
    3. 追加学習リソースと検証タスク
  8. 関連記事
  9. 最新記事

Python += の基礎(意味・構文・最短理解)

+= の定義と等価表現(x += y と x = x + y の関係)

Pythonの「+=」は、加算と代入を同時に行う演算子です。
「x += y」と記述すると、「x = x + y」と同じ意味になります。
この記述は数値だけでなく、文字列やリストなどのオブジェクトにも使えます。

データ型 += の例 等価な式 結果
数値 x = 3; x += 2 x = x + 2 xは5になる
文字列 s = “Py”; s += “thon” s = s + “thon” sは”Python”になる
リスト l = [1,2]; l += [3] l = l + [3] lは[1,2,3]になる

ポイント:
– 数値以外にも文字列連結やリストの要素追加に利用できる
– コードの簡潔化や可読性向上に役立つ

+= が使われる典型的な場面(カウンタ・累算・ログ組立て)

Pythonの「+=」は、繰り返し処理やデータの蓄積に特に便利です。
例えば、forループでカウンタを増やしたり、文字列やリストをまとめていく用途で頻繁に使われます。

主な活用例:

  • カウンタの加算
  • ループで合計値を計算する際に、変数へ値を累積
  • 文字列の連結
  • 複数のテキストやログを1つの文字列にまとめる
  • リストへの要素追加
  • 複数の値を一括でリストに加える

例:

total = 0
for value in [1, 2, 3]:
    total += value  # totalに1,2,3を順に加算

log = ""
for msg in ["start", "run", "end"]:
    log += msg + " "  # logに各メッセージを連結

data = [1, 2]
data += [3, 4]  # [1, 2, 3, 4]になる

なぜ便利か?
– 1行で加算や結合処理が完結する
– 可読性が上がり、バグの発生も抑えられる

実行時の基本挙動(評価順・代入のタイミング)

「+=」の実行時は、まず右辺の演算が行われ、次に左辺へ代入されます。
この順序を理解することで、予期せぬ結果やエラーを防ぐことができます。

処理の流れ:
1. 右辺(y)の値を取得
2. 左辺(x)に現在の値を加算・連結
3. 新しい値をxに代入

例:

x = 2
y = 5
x += y  # 1. y(5)を取得 2. x(2)+y(5)=7 3. 7をxに代入

注意点:
– 演算子の優先順位は高くないため、複雑な式では()を使うと安全
– 文字列やリストでは、新しいオブジェクトを生成する場合と、元のオブジェクトを書き換える場合がある

まとめ表:

処理ステップ 内容
1 右辺を評価
2 加算・結合など演算
3 左辺に代入

この流れを理解しておくと、Python演算子の実践的な使い方や、バグの防止に大きく役立ちます。

複合代入演算子一覧と比較(+=, -=, =, /=, //=, *=, &=, |=, ^= など)

各複合代入演算子の意味と短い使用例

Pythonでは複合代入演算子を使うことで、変数の値を効率的に更新できます。主な複合代入演算子を以下の表にまとめます。

演算子 意味 使用例 実際の動作
+= 加算して代入 x += 3 x = x + 3
-= 減算して代入 y -= 2 y = y – 2
*= 乗算して代入 z *= 4 z = z * 4
/= 除算して代入 a /= 5 a = a / 5
//= 切り捨て除算して代入 b //= 2 b = b // 2
%= 剰余算して代入 c %= 7 c = c % 7
**= 累乗して代入 d **= 3 d = d ** 3
&= ビットANDして代入 e &= 1 e = e & 1
|= ビットORして代入 f |= 2 f = f | 2
^= ビットXORして代入 g ^= 4 g = g ^ 4

ポイント:
– 文字列やリストにも「+=」を利用でき、要素追加や結合で活用されます。
– 例えば str1 += "abc" で文字列を連結、list1 += [4, 5] でリストの拡張が可能です。

複合代入と単純代入の振る舞い比較(動作差・副作用の有無)

複合代入演算子と単純代入には、特にリストや辞書などのmutable(可変)オブジェクトを扱う場合に違いがあります。

  • 複合代入(例:list1 += [4, 5])
  • 元のオブジェクト自体が変更されるため、参照が共有されている場合、他の変数にも影響します。
  • 文字列や数値(immutable)は新しいオブジェクトが作られます。

  • 単純代入(例:list1 = list1 + [4, 5])

  • 新しいオブジェクトが作成され、元のオブジェクトとは異なります。
  • 参照は更新され、他の変数への影響はありません。

例:

list_a = [1, 2, 3]
list_b = list_a
list_a += [4]
# list_bも[1, 2, 3, 4]になる

list_a = [1, 2, 3]
list_b = list_a
list_a = list_a + [4]
# list_bは[1, 2, 3]のまま、list_aのみ[1, 2, 3, 4]になる

要点まとめ:
mutable型の場合、+=は元のオブジェクトを直接変更
immutable型の場合、+=でも新しいオブジェクトが生成される
– 副作用を避けたい時は単純代入を選ぶのが安全です

演算子優先順位と組合せで発生する注意点

Pythonでは演算子ごとに優先順位が決まっており、複雑な式では思わぬ結果になることがあります。複合代入演算子は比較的優先順位が低いため、他の演算子と組み合わせる際は特に注意が必要です。

優先順位の一例:

優先順位 演算子例
*, , /, //, %, +, –
+=, -=, *=, /=

注意すべきポイント:
x += y * 2 の場合、まず y * 2 が計算されてから x += される
– 必要に応じて 括弧を使い、意図を明確にすることがミスを防ぐコツ

安全な書き方の例:
x += (y + z) * 3
– 条件式や複雑な式を含む場合は、部分ごとに演算を分けて記述すると可読性も上がります

誤用防止のためのポイントリスト:
– 比較演算子(==など)と混同しない
– 代入演算子と他の演算子の組合せは括弧を活用
– コードの可読性を意識し、シンプルな記述を心がける

複合代入演算子を正しく使うことで、Pythonプログラミングの効率や安全性が向上します。

型ごとの実践活用(文字列・リスト・辞書・NumPy配列)

文字列での+=:挙動・パフォーマンス・代替(join)

Pythonで文字列同士を連結する際、+=は直感的でよく使われます。たとえばstr1 += str2のように記述すると、左辺の文字列に右辺の文字列が追加されます。しかし、文字列はイミュータブル(変更不可)なため、毎回新しいオブジェクトが生成される点に注意が必要です。特に大きなループで+=を繰り返す場合、パフォーマンスが低下しやすいです。

効率的に複数の文字列を結合する場合は、リストに追加してからjoin()メソッドを使う方法が推奨されます。以下に比較表を示します。

方法 特徴
文字列 += 文字列 書きやすいが大量連結には非効率
リスト+join 大量連結に最適で高速

主なポイント
+=は少数回なら直感的でOK
大量連結やループにはjoin推奨
イミュータブルゆえの新規生成コストに注意

リストでの+=:append/extendとの違い、参照の扱い

リストに対して+=を使うと、右辺のシーケンス要素を左辺リストに一括で追加できます。これはextend()メソッドと同じ動作です。例えばlist1 += list2list1.extend(list2)と同義で、元のリスト自体が更新されます。

一方、append()はオブジェクト自体を1つの要素として追加します。リストの参照を他で保持している場合、+=やextendで直接変更されるため副作用に注意しましょう。

操作 挙動
list1 += list2 list1へlist2全要素追加
list1.extend(list2) 同上
list1.append(x) xを1要素として追加

主な注意点
参照共有時は予期せぬ変更に注意
+=はリスト自身を直接変更する
副作用を避けるにはcopy()で複製利用が有効

辞書・集合・その他の型での取り扱い(可否と回避策)

辞書型(dict)や集合型(set)では、+=演算子は直接利用できません。これらの型で要素を追加したい場合は、各型に適したメソッドを使います。

+=利用可否 代替手段
dict × update()
set × add(), update()

活用例
– 辞書:dict1.update(dict2)で複数要素を一括追加
– 集合:set1.update(set2)で他の集合要素を追加

他にもイミュータブル型(タプルやfrozenset)では内容の変更自体ができません。必要に応じてリストやsetへ変換してから操作するのが安全です。

NumPy・pandas などでの +=:ブロードキャストとメモリ効率

NumPy配列やpandasのデータ構造では、+=は数値や配列同士の要素ごとの加算・更新が高速に行えます。これにより、大規模データ処理時に効率的なインプレース更新が可能です。

NumPyでは、arr += 1のように記述すると全要素が一括で加算されます。これはブロードキャスト機能により、スカラー値や同形状配列との演算を自動で最適化します。pandasでもDataFrame += valueの形で同様に利用できます。

ライブラリ 挙動 利点
NumPy 要素ごと加算(インプレース) 高速・省メモリ
pandas Series/DataFrame全要素加算 データ分析で便利

主な注意点
インプレース更新は元配列が書き換わる
共有参照時は意図しない変更に注意
型や形状の不一致時はエラー発生

配列演算の効率化やメモリ節約が必須な大規模処理では、+=の特性を活かしたコーディングが非常に有効です。

バグ事例・落とし穴とその具体的な対処法

よくあるバグパターンの再現コードと原因分析 – 初心者が遭遇しやすい5つの典型例(型の不一致、参照副作用、意図しない拡張、優先順位ミス、イミュータブル誤解)

Pythonの演算子「+=」は便利ですが、思わぬバグや落とし穴に注意が必要です。特に初心者が遭遇しやすいバグを5つ取り上げ、その原因も解説します。

バグパターン 内容
型の不一致 数値と文字列、リストと数値など異なる型で+=を使うとTypeError発生 x = 3; x += "4"
参照副作用 リストなどミュータブルオブジェクトに+=を使うと、参照先も変化して意図しない結果に a = [1]; b = a; a += [2]
意図しない拡張 文字列やリストで+=を使ったとき、想定以上に繰り返し追加されることがある s = "a"; for _ in range(3): s += "b"
優先順位ミス 複雑な式で括弧を省略すると、想定外の処理順でバグになることがある x = 1; x += 2 * 3
イミュータブル誤解 タプルや数値などイミュータブル型で+=を使うと、新しいオブジェクトが生成され、元の変数が変わらない t = (1,); t += (2,)

こうしたバグは、型や演算子の特徴を正しく理解することで回避できます。

各バグに対する具体的な修正パッチ(コード差分で示す) – 修正前/修正後を短く示し、なぜ安全になるかを説明。

よくあるバグに対して、修正前後のコードを比較しながら安全な書き方を解説します。

バグ例 修正前 修正後 ポイント
型の不一致 num = 5; num += "1" num = 5; num += int("1") 型変換でエラー回避
参照副作用 a = [1]; b = a; a += [2] a = [1]; b = a.copy(); a += [2] 新しいリストにコピーして参照切り離し
意図しない拡張 s = "a"; for _ in range(3): s += "b" s = "a"; s = s + "b"*3 まとめて追加し、ループでの過剰連結を防止
優先順位ミス result = 2; result += 3 * 2 result = 2; result += (3 * 2) 括弧で明示し誤解を防ぐ
イミュータブル t = (1,); t += (2,) t = (1,); t = t + (2,) 新しいタプル生成を明示的に記述

各修正例は「型」「参照」「式の優先順位」を意識し、安全にコーディングできるようにするのがポイントです。

テスト・デバッグの実践テクニック(小さな単体テスト例) – 簡単なassertやpytestの1~2行テストで防げる例を提示。

バグ検出のためには、単体テストを習慣づけることが重要です。Pythonの標準機能やpytestを使ったシンプルなテスト例を紹介します。

  • 型の不一致防止のテスト

python
num = 5
num += int("1")
assert num == 6

  • 参照副作用のテスト

python
a = [1]
b = a.copy()
a += [2]
assert b == [1]

  • 意図しない拡張のテスト

python
s = "a"
s += "b" * 3
assert s == "abbb"

  • 優先順位ミス防止のテスト

python
result = 2
result += (3 * 2)
assert result == 8

  • イミュータブル確認のテスト

python
t = (1,)
t = t + (2,)
assert t == (1, 2)

テストコードを追加することで、思わぬバグの早期発見が可能になります。開発の各段階で小さなテストを積み上げる習慣が、品質向上の鍵となります。

パフォーマンス最適化とベンチマーク指針

文字列連結:+= vs join のベンチマークと推奨基準

Pythonで文字列を連結する際、+=演算子とjoinメソッドのどちらが効率的かは、連結回数やデータサイズによって異なります。小規模な連結では+=でも十分ですが、反復回数や文字列数が増えるほどjoinが圧倒的に高速です。実務では、下記を基準に手法を選択しましょう。

規模 推奨手法 理由
10回未満 += コードが簡潔でわかりやすい
10~1000回 join メモリ効率と実行速度が安定
1000回以上 join パフォーマンス差が顕著になる

ポイント
+=はイミュータブルな文字列に対して都度新しいオブジェクトを生成するため、大規模な連結では非効率です。
joinは反復された文字列を一括で連結するため、大量データでの処理が高速です。

リスト・配列操作の効率化テクニック

リストや配列を効率的に操作するには、適切な手法の選択が重要です。特に要素の追加や繰り返し処理では、パフォーマンスの差が出ます。

主な効率化テクニック
事前割当:最終サイズがわかる場合は、空リストにappendするよりも最初にサイズを確保したリストを用意しindex指定で代入すると高速です。
extendの活用:複数要素を一度に追加する場合は、extendを使うことでループでのappendより効率的です。
リスト内包表記:条件付きや変換処理では、forループよりリスト内包表記が高速かつ可読性も高くなります。
ジェネレータの使い分け:大規模データ処理時は、リストではなくイテレータ(ジェネレータ式)を使うことでメモリ消費を抑えられます。


– リストに要素を追加する最適手法は、少量ならappend、大量ならextendや内包表記。
– 大きなデータを一度に処理しない場合は、yieldを使い遅延評価でパフォーマンス向上が可能。

実測で確認する方法(timeit を使った簡易ベンチマーク手順)

パフォーマンスの最適化には、実際に計測して最適解を選ぶことが重要です。Pythonのtimeitモジュールを使えば、簡単にベンチマークが行えます。

ベンチマーク手順
1. 比較する処理を関数として定義
2. timeitで繰り返し実行し、平均や中央値などを確認
3. 標準偏差もチェックし安定した値か評価

サンプルコード

import timeit

def concat_plus_equal():
    s = ""
    for i in range(1000):
        s += "a"

def concat_join():
    s = []
    for i in range(1000):
        s.append("a")
    "".join(s)

times_plus_equal = timeit.repeat(concat_plus_equal, number=100, repeat=5)
times_join = timeit.repeat(concat_join, number=100, repeat=5)

print("+= 平均:", sum(times_plus_equal)/len(times_plus_equal))
print("join 平均:", sum(times_join)/len(times_join))

評価指標
– 平均:全実行時間の平均値
– 中央値:外れ値に影響されにくい代表値
– 標準偏差:実行速度のばらつき

このように、複数回測定し安定した処理を選ぶことがパフォーマンス最適化の鍵です。

応用例:アルゴリズム・データ処理・実務での利用シーン集

ループ内累算・集計(頻出パターンと最適実装)

Pythonの+=は、ループ内での集計やカウンタ処理で頻繁に使われます。例えば、複数の数値を合計する場合や出現回数をカウントする処理は、+=によって簡潔かつ効率的に記述できます。collections.Counterを用いれば、辞書型での頻度集計もより直感的に行えます。

集計方法 サンプルコード 特徴・使い分け
変数による合計 total += value 少量データや単純集計におすすめ
dictで出現回数集計 freq[word] += 1 大量データやキーごとの集計に有効
Counterで頻度集計 from collections import Counter
freq = Counter(list_data)
可読性・速度・機能性に優れる

ポイント
– ループ内で+=を使うと、変数の値をその場で更新できるため、可読性が高まります。
– 辞書やCounterとの組み合わせで、テキスト解析・データ集計が高速化します。

ログ/メッセージ組立て・ストリーム処理での使い方

ログやメッセージの組み立てにも+=は大活躍します。文字列の連結では+=を使うことで、都度printするよりもバッファにまとめて出力でき、I/O回数やメモリ消費を抑えられます。特に大量のデータを扱うストリーム処理やリアルタイムログ生成では、効率的なバッファリングが重要です。

効果的な使い方
– 文字列リストに要素をappendし、最後にjoinする
– 直接str型に+=で連結する場合、数回なら高速だが、ループが長い場合はリスト&join推奨
– ログバッファに+=でまとめてから出力することで、処理の高速化とメモリ節約が可能

メソッド メリット 適切な利用シーン
+=による連結 少量・単純な処理に最適 短いログや簡易メッセージ
list+join 複数回・長文に高効率 大量ログ・長文組み立て

注意点
– 文字列の+=は都度新しいオブジェクトを生成するため、繰り返し処理にはリスト連結が適しています。

データ分析・機械学習での+=活用(pandas, numpy の実務例)

データ分析や機械学習の現場でも+=は欠かせません。pandasやnumpyでは、行や列単位での累積計算や配列のインプレース更新が求められます。+=を使うことで、メモリ効率の良い処理と高速なデータ更新が可能になります。

ライブラリ 用途例 メリット 注意点
pandas df['col'] += value 列単位の一括更新が可能 データ型に注意
numpy arr += value 配列全体の高速な加算処理 型の一致が必要
ループ処理 for i in idx: arr[i] += x 行ごとの累積・状態更新に便利 インデックス範囲注意

メリット
– 配列やDataFrameをインプレースで更新することで、メモリ効率が良くなり、大規模データでもパフォーマンスを維持できます。
– 条件付きでの加算や組み合わせ演算も柔軟に対応。

注意点
– pandasやnumpyは型変換に厳密なため、型の不一致やNaN値がある場合はエラーや予期せぬ結果になることがあります。
+=は元のデータを直接変更するため、必要に応じてコピーを作成することも検討しましょう。

よくある質問(記事内Q&A形式)と学習を加速する演習問題

質問集(厳選10問)と1行回答+参照コード

質問 回答 参照コード例
1. Pythonの「+=」とは? 変数に値を加算し、その結果を再代入する複合代入演算子です。 x += 2
2. 「+=」でエラーになる理由は? 対応しない型同士(例:数値とリスト)で使うとTypeErrorになります。 1 += [3] → エラー
3. 文字列連結に「+=」を使える? 使えますが、複数回連結時はjoin関数のほうが効率的です。 s += “abc”
4. リストに「+=」を使う意味は? リストの要素を拡張(extend)します。新しいリストを追加するのではなく元のリストを変化させます。 l += [4,5]
5. 「=」と「==」の違いは? 「=」は代入、「==」は比較演算子です。 if a == b:
6. 「+=」と「+」の違いは? 「+」は新たな値を生成し、「+=」はその結果を元の変数に代入します。 a = a + 1 / a += 1
7. 文字列の連結効率を上げるには? リストで要素を追加し、最後にjoinでまとめるのが高速です。 ”.join(list)
8. 「+=」の優先順位は? 比較的低く、通常は右辺全体が評価されてから適用されます。 x += y * 2
9. 他の複合代入演算子は? 「-=」「*=」「/=」「//=」「%=」「=」などがあります。** x *= 3
10. 非推奨な「+=」の使い方は? イミュータブルなオブジェクト(タプルなど)には使えません。 t = (1,); t += (2,)

演習問題(入門→中級→上級:計6問)

入門編

  1. 下記のコードの出力は?
    count = 1
    count += 5
    print(count)

    – ヒント: 「+=」は加算して再代入
    – 期待される出力: 6

  2. 文字列sに「Python」を末尾に追加してください。
    s = "学習"
    # ここに記述
    print(s)

    – ヒント: 代入演算子「+=」を使用
    – 期待される出力: 学習Python

中級編

  1. リストa = [1,2]に[3,4]を「+=」で追加した場合のaの内容は?
    – ヒント: appendとextendの違い
    – 期待される出力: [1, 2, 3, 4]

  2. x = 2、y = 3 のとき、xにyを「*=」で掛けた後のxの値は?
    – 期待される出力: 6

上級編

  1. 文字列を100回連結する場合、「+=」と「”.join()」のどちらが高速か答えてください。理由も述べてください。
    – ヒント: イミュータブルオブジェクトの性質

  2. 入れ子のリストb = [[1],[2]]にb[0] += [3,4]を実行した場合のbの内容と理由を説明してください。
    – 期待される出力: [[1, 3, 4], [2]]

模範解答

  • 問1: 6
  • 問2: s += “Python”
  • 問3: [1, 2, 3, 4]
  • 問4: x *= y で xは6
  • 問5: 「”.join()」が高速。文字列はイミュータブルなので「+=」は都度新規生成されるため非効率。
  • 問6: [[1,3,4],[2]]。リストの要素を拡張するため。

追加学習リソースと検証タスク

テーマ 推奨学習手順・活用例
Python演算子の一覧理解 公式ドキュメントで演算子表を確認。表を自作すると理解が深まります。
型検査とエラー対策 type()関数やisinstance()関数で型チェックし、演算子適用前に安全性を確保。
ベンチマーク測定 timeitモジュールで「+=」と「join」の処理速度を比較。
テスト自動化 unittestやpytestを使い、演算子の動作や境界値を検証。
コードレビュー 変数名、演算子の使い方(特に「=」と「==」の混同)を重点的にチェック。

学習を加速するための推奨タスク

  • 主要な演算子を実際に手を動かして試す
  • 型エラー時のエラーメッセージを確認する
  • コードの一部を変更して挙動の違いを観察する

セルフチェックリスト

  • 変数の型と演算子の対応を確認したか
  • ループ内での「+=」の挙動を検証したか
  • 文字列やリストへの「+=」利用時の違いを理解したか

このページの内容を活用し、Pythonの演算子を正しく使いこなせるように、実際にコードを書いて理解を深めてみてください。

コメント