🐍
Pythonの基礎:リストを完全理解!動きが見えるサンプル付き解説
Pythonの「リスト」は、複数の値をひとまとめにして扱える便利なデータ型です。ただし、参照の仕組みや値の変化が見えづらいため、初心者がつまずきやすいポイントでもあります。
この記事では、サンプルコード+実行結果+ポイント解説で、リストの動きをしっかり理解できるように構成しています。
リストの基本:作成とアクセス
リストは []
を使って作成し、インデックス番号で要素にアクセスします。
fruits = ["apple", "banana", "cherry"] # リストを作成
print(fruits[0]) # 先頭の要素(0番目)を取得
print(fruits[-1]) # 最後の要素を取得(-1は末尾の意味)
実行結果:
apple
cherry
→ インデックス番号で特定の位置の値を簡単に取り出せます。
リストの操作:追加・削除・更新
リストには、あとから値を追加・削除・上書きできます。
fruits = ["apple", "banana", "cherry"]
fruits.append("orange") # 最後に"orange"を追加
fruits.remove("banana") # "banana"を削除(値で指定)
fruits[1] = "grape" # インデックス1の要素を"grape"に更新
print(fruits) # リストの内容を表示
実行結果:
['apple', 'grape', 'orange']
→ リストは柔軟に変更できます。順番も自動的に保たれます。
代入とコピーの違い(ここが重要!)
変数同士で代入すると、同じリストを共有してしまいます。
a = [1, 2, 3] # リストを作成
b = a # aとbは同じリストを参照する
b[0] = 99 # bを変更するとaにも影響する
print("a:", a) # aの内容を表示
print("b:", b) # bの内容を表示
実行結果:
a: [99, 2, 3]
b: [99, 2, 3]
→ a = b
は「aもbも同じモノを持つ」ことになる点に注意。
コピーすれば別物になる
copy()
を使うと、まったく別のリストが作れます。
a = [1, 2, 3] # 元のリスト
b = a.copy() # 別のリストをコピーで作成
b[0] = 99 # bだけを変更
print("a:", a) # aは元のまま
print("b:", b) # bは変更されている
実行結果:
a: [1, 2, 3]
b: [99, 2, 3]
→ .copy()
を使えば、元のリストを壊さずに操作できます。
for文との組み合わせ:リストを1つずつ処理
for
文を使うと、リストの中の値を順に処理できます。
fruits = ["apple", "banana", "cherry"]
for fruit in fruits: # fruitsの各要素を1つずつ取り出す
print(fruit) # 要素を表示
実行結果:
apple
banana
cherry
→ 順番に処理したいときは for
文がシンプルで便利です。
リスト内包表記(中級編)
リストから別のリストを一行で作ることができます。
nums = [1, 2, 3, 4] # 元のリスト
squared = [x**2 for x in nums] # 各要素を2乗して新しいリストを作る
print(squared) # 結果を表示
実行結果:
[1, 4, 9, 16]
→ リスト内包表記は短くて読みやすく、処理の意図が明確です。
まとめ
- リストは複数の値をまとめて管理できる強力な型
- 追加・削除・更新などの操作が直感的に行える
- 代入は参照コピーになるため
.copy()
を使うことが重要 -
for
文や内包表記で柔軟な処理ができる
リストはPythonでも特によく使う基本構文のひとつです。ここでしっかりと仕組みと動きを理解しておけば、今後のPython学習もスムーズになります。ぜひ、この記事を参考に実際にコードを動かしながら試してみてください。
Discussion