
1. はじめに
この回では、リストの要素を追加したり、変更したり、削除したりする方法を学びます。前回は、リストに入っている値を取り出して使う方法を確認しました。
実際のプログラムでは、最初に作ったリストをあとから書き換える場面がよくあります。そのため、リストの基本操作を理解しておくことが重要です。
2. この回で学ぶこと
append()で要素を追加する方法- 添字を使って要素を変更する方法
pop()で要素を削除する方法remove()で値を指定して削除する方法- 空のリストから始める方法
3. 概念の説明
リストは、作ったあとでも中身を変更できます。これを、リストは変更可能であると言います。
まず、末尾に要素を追加するときは append() を使います。
fruits = ["apple", "banana"]
fruits.append("orange")
print(fruits)この結果は ['apple', 'banana', 'orange'] です。
次に、すでにある要素を変更するときは、添字を使って代入します。
fruits = ["apple", "banana", "orange"]
fruits[1] = "grape"
print(fruits)このコードでは、添字 1 の "banana" が "grape" に変わります。
要素を削除するときは、pop() と remove() を使い分けます。
pop() は、添字を指定して要素を削除します。
fruits = ["apple", "banana", "orange"]
fruits.pop(1)
print(fruits)この結果は ['apple', 'orange'] です。
一方で remove() は、値を指定して最初に見つかった要素を削除します。
fruits = ["apple", "banana", "orange"]
fruits.remove("banana")
print(fruits)この結果も ['apple', 'orange'] です。
また、最初は空のリストを作って、あとから要素を追加していくこともできます。
numbers = []
numbers.append(10)
numbers.append(20)
print(numbers)この結果は [10, 20] です。
4. サンプルコード
次のコードを見てください。
fruits = []
fruits.append("apple")
fruits.append("banana")
fruits.append("orange")
print("追加後:", fruits)
fruits[1] = "grape"
print("変更後:", fruits)
fruits.pop(0)
print("pop後:", fruits)
fruits.remove("orange")
print("remove後:", fruits)このコードでは、空のリストから始めて、追加、変更、削除を順番に確認しています。
5. 実行手順
まず、list_operations.py というファイルを作ります。
touch list_operations.pylist_operations.py をエディターで開き、次のコードを書いて保存します。
fruits = []
fruits.append("apple")
fruits.append("banana")
fruits.append("orange")
print("追加後:", fruits)
fruits[1] = "grape"
print("変更後:", fruits)
fruits.pop(0)
print("pop後:", fruits)
fruits.remove("orange")
print("remove後:", fruits)保存したら、ターミナルで次のコマンドを実行します。
python3 list_operations.py実行結果は次のようになります。
追加後: ['apple', 'banana', 'orange']
変更後: ['apple', 'grape', 'orange']
pop後: ['grape', 'orange']
remove後: ['grape']6. コードの読み方
fruits = []は、空のリストを作って変数fruitsに代入しています。- まだ要素は1つも入っていません。
fruits.append("apple")は、リストの末尾に"apple"を追加しています。- 同じように
append()を続けて使うと、要素を後ろに増やせます。 fruits[1] = "grape"は、添字1の要素を"grape"に変更しています。- この時点では、
fruits[1]は"banana"なので、その値が置き換わります。 fruits.pop(0)は、添字0の要素を削除しています。- この例では、最初の
"apple"が削除されます。 fruits.remove("orange")は、値が"orange"の要素を削除しています。pop()は位置で削除し、remove()は値で削除する点が違います。
7. 初学者がつまずきやすい点
append()は末尾に追加する- 要素の変更は
リスト名[添字] = 値の形で書く pop()は添字で削除するremove()は値で削除する- 空のリストは
[]で作れる
特に、pop(1) と remove(1) は意味がまったく違います。pop(1) は添字 1 の要素を削除しますが、remove(1) は値が 1 の要素を削除します。
8. よくあるエラー
1つ目は、存在しない添字を使って変更や削除をしようとした場合です。
IndexError: list assignment index out of rangeたとえば次のような書き方です。
fruits = ["apple", "banana"]
fruits[2] = "orange"このリストの添字は 0 と 1 だけなので、fruits[2] は変更できません。
2つ目は、remove() で存在しない値を指定した場合です。
ValueError: list.remove(x): x not in listたとえば次のような書き方です。
fruits = ["apple", "banana"]
fruits.remove("orange")"orange" がリストに入っていないため、このエラーになります。
3つ目は、空のリストに対して pop() を使った場合です。
IndexError: pop from empty listたとえば次のような書き方です。
numbers = []
numbers.pop()要素がない状態では、削除する対象がありません。
9. 練習用コード
次のコードを practice_list_operations.py として保存して実行してください。
tasks = []
tasks.append("study")
tasks.append("write")
tasks.append("review")
tasks[0] = "python"
tasks.pop(1)
print(tasks)実行したあとで、どの順番でリストの内容が変わったか確認してください。
余裕があれば、最後に tasks.remove("review") を追加して、結果がどう変わるか試してください。
10. この回で理解しておくこと
- リストは作ったあとでも中身を変更できる
append()を使うと末尾に要素を追加できる- 添字を使うと特定の要素を変更できる
pop()は位置を指定して削除できるremove()は値を指定して削除できる
11. まとめ
今回は、リストに要素を追加、変更、削除する基本操作を確認しました。リストは、データを順番に持つだけでなく、あとから中身を書き換えられる点が重要です。
append() pop() remove() と添字による変更は、今後のリスト処理で何度も使います。空のリストから始めてデータをためていく書き方も合わせて理解してください。
12. 次回予告
次回は、辞書を使って名前付きのデータを扱う方法を学びます。キーと値の組み合わせでデータを管理する基本を確認します。








