【Python】レッスン4-01:リストの定義と要素追加

Lesson3ではPythonの関数とスコープについて学習してきました。
今回からデータ構造編に入ります。このページはその入り口、関数の基本について見ていきます。
Lesson1:基礎文法編
Lesson2:制御構造編
Lesson3:関数とスコープ編
Lesson4:データ構造編
・Lesson4-1:リストの定義と要素の追加を理解しよう ◁今回はココ
・Lesson4-2:リストの要素を削除しよう
・Lesson4-3:リストの情報を調べよう
・Lesson4-4:リストの集計・並べ替えを理解しよう
・Lesson4-5:リストのスライスを理解しよう
・Lesson4-6:リストのループ処理を理解しよう
・Lesson4-7:リストの内包表記を理解しよう
・Lesson4-8:リスト・タプル・辞書・集合の概要と違いを理解しよう
・Lesson4-9:タプルの基本を理解しよう
・Lesson4-10:タプルのアンパックを理解しよう
・Lesson4-11:辞書の基本を理解しよう
・Lesson4-12:辞書のループ処理を理解しよう
・Lesson4-13:辞書の内包表記を使ってリストから辞書を作ろう
・Lesson4-13:集合(セット)の基本を理解しよう
・練習問題4-1:宝探しゲームを作ろう
・練習問題4-2:ナインゲームを作ろう
・練習問題4-3:マルバツゲームを作ろう
Lesson5:オブジェクト指向編
次のステップ:Python基礎習得者にお勧めの道5選(実務or副業)
リストの基本と要素追加の使い分け(append/extend/insert)
「リスト」は、順序を保ったまま複数の値を一括管理できる基本データ型です。
本記事では、list
の定義方法・作成(リテラル/コンストラクタ)から、要素の参照・更新・削除、そして append
/ insert
/ extend
といった“要素追加”メソッドの使い分けまでを初心者向けにコンパクトに整理します。
それでは、リストの基本から要素追加メソッドの違いまで、一歩ずつ確認していきましょう。
本文へ進んで実装しながら理解を深めてください。
リストの基礎|定義・作成方法と特徴
リストは 複数の値を一つの変数にまとめて格納 することができるデータ構造です。
リストは角括弧 []
で囲まれた要素の並びとして表現され、各要素はカンマで区切られます。
リストの要素は、数値、文字列、他のリストなど、さまざまなデータ型を含むことができます。
リストを作成するには角括弧 []
の中に要素を並べて変数に代入します。以下は数値と文字列を含むリストの作成例です。
# 数値のリスト numbers = [1, 2, 3, 4] # 4つの数値を要素に持つリストを作成し、変数numbersに代入 # 文字列のリスト fruits = ["りんご", "ばなな", "ぶどう"] # 3つの文字列を要素に持つリストを作成し、変数fruitsに代入
なお、Pythonではリスト内の要素の順番をインデックスと言い、0から数えます。
つまり最初の要素はインデックス0、次はインデックス1となります。上のコードではnumbersの「2」やfruitsの「ばなな」はインデックス1になります。
また、リストは空で作成して後で要素を追加していくこともできます。
# 空のリストを作成 empty_list = [] # 要素を持たないリストを作成し、変数empty_listに代入
要素追加の基本|append
・extend
・insert
の使い分け
リストには要素を追加するためのいくつかのメソッドがあります。
代表的なメソッドとして、append
、extend
、insert
の3つを紹介します。
メソッドとは特定のオブジェクトに対して実行できる関数のことです。Pythonではリストや文字列、辞書などのオブジェクトが持つ専用の操作を「メソッド」と呼びます。
たとえばリストの要素を追加したり、削除したりするメソッドがあります。これにより、リストの内容を効率的に操作できます。
メソッド自体の詳細解説は Lesson5-2:メソッドの基本 で行います。
appendメソッドの使い方|リスト末尾に新しい要素を追加
append
メソッド はリストの末尾に新しい要素を追加します。追加する要素は1つだけです。
※ メソッドを使う際にはリストの変数名の後に「ドット(.)」を付け、その後にメソッド名を書きます。今回のappendメソッドの例ならmy_list.append(値)
となります。
my_list = [1, 2, 3] # 3つの要素を持つリストを作成 my_list.append(0) # リストの末尾に0を追加 print(my_list) # リストを出力。結果: [1, 2, 3, 0]
extendメソッドの使い方|リストに他のリストを追加
extend
メソッド はリストの末尾に他のリストの要素をすべて追加します。
リスト同士を結合する際に便利です。
my_list = [1, 2, 3] # 3つの要素を持つリストを作成 my_list.extend([2, 3, 4]) # リストの末尾に別のリストを追加 print(my_list) # リストを出力。結果: [1, 2, 3, 2, 3, 4]
insertメソッドの使い方|リストの任意の位置に要素を挿入
insert
メソッド はリストの任意の位置に要素を挿入します。
挿入する位置はインデックスで指定します。
my_list = [1, 2, 3] # 3つの要素を持つリストを作成 my_list.insert(1, "a") # インデックス1に文字"a"を挿入 print(my_list) # リストを出力。結果: [1, "a", 2, 3]
コード例|append
・extend
・insert
の実行サンプル
リストの操作をもう少し複雑にした例を見てみましょう。
以下ではリストに対して append
、extend
、insert
の各メソッドを組み合わせて操作を行います。
# リストを作成 my_list = [10, 20, 30] # appendを使って末尾に40を追加 my_list.append(40) print(my_list) # 結果: [10, 20, 30, 40] # extendを使って複数の要素を追加 my_list.extend([50, 60]) print(my_list) # 結果: [10, 20, 30, 40, 50, 60] # insertを使って任意の場所に要素を挿入 my_list.insert(2, 25) # インデックス2の位置に25を挿入 print(my_list) # 結果: [10, 20, 25, 30, 40, 50, 60]
まとめ|リストの基礎と要素追加の使い分けを定着
ここまでで、リストの意味と作成方法([]
リテラル/list()
コンストラクタ)、また要素追加メソッドである append
/ extend
/ insert
の振る舞いと使い分けを整理しました。
append
:1要素を末尾に追加extend
:反復可能オブジェクトの中身を展開して追加insert
:任意の位置に1要素を挿入
この理解により、単一要素の追加/複数データの一括追加/順序を保った挿入を状況に応じて選べるようになりました。
小さなスクリプトでも、データ収集・前処理・繰り返し処理の組み立てがぐっと扱いやすくなるはずです。
あとは、自分の手で何度か書いて動かすことが定着の近道です。
今日学んだ使い分けを、身近なデータ操作や練習コードに落とし込みながら、次のレッスンでも一歩ずつスキルを積み上げていきましょう。
- サイト改善アンケート|ご意見をお聞かせください(1分で終わります)
-
本サイトでは、みなさまの学習をよりサポートできるサービスを目指しております。
そのため、みなさまの「プログラミングを学習する理由」などをアンケート形式でお伺いしています。1分だけ、ご協力いただけますと幸いです。
【Python】サイト改善アンケート
練習問題:リストの要素追加を体験しよう
この記事で学習した「リストの定義と素追加」を復習する練習問題に挑戦しましょう。
問題|リストの要素追加や挿入操作を練習しよう
指定されたリストに対して append
、extend
、insert
メソッドを使って、要素を追加・挿入してください。
以下の要件に従ってコードを完成させてください。
- 初期リスト
my_list
を[1, 2, 4]
として定義すること。 append
メソッドを使い、リストの末尾に5を追加すること。extend
メソッドを使い、リストの末尾に6と7を追加すること。insert
メソッドを使い、リストの2と4の間に3を挿入すること。- リストの各操作の結果を
print
文で出力すること。
ただし、以下のような実行結果となるコードを書くこと。
append後のリスト: [1, 2, 4, 5] extend後のリスト: [1, 2, 4, 5, 6, 7] insert後のリスト: [1, 2, 3, 4, 5, 6, 7]
解答例|リスト要素追加3ステップ
例えば以下のようなプログラムが考えられます。
- 正解コード
-
# リストの定義 my_list = [1, 2, 4] # 初期のリスト my_list.append(5) # リストの末尾に5を追加 print(f"append後のリスト: {my_list}") my_list.extend([6, 7]) # リストに別のリスト[6, 7]を追加 print(f"extend後のリスト: {my_list}") my_list.insert(2, 3) # インデックス2の位置に3を挿入 print(f"insert後のリスト: {my_list}")
リストの定義と要素追加の疑問解消|FAQと用語のまとめ
初心者がつまずきやすいポイントをFAQとしてまとめ、またよく使う専門用語をわかりやすく整理しました。
理解を深めたいときや、ふと疑問に感じたときに役立ててください。
FAQ|リストの定義と要素追加に関するよくある質問
- Q1. Pythonのリストと配列はどう違うのですか?
-
リストは異なるデータ型を混在させられる柔軟な構造ですが、配列(array)は基本的に同一のデータ型で構成されるため、数値処理などに向いています。PythonではNumPyで本格的な配列操作が可能です。
- Q2. リストのappendとextendの違いは何ですか?
-
append()
はリストの末尾に「1つの要素」を追加し、extend()
は複数の要素をリストに結合します。使い方を間違えるとネストされたリストになってしまうため注意が必要です。
- Q3. Pythonのリストは何個まで要素を追加できますか?
-
Pythonのリストには実質的な要素数の上限はなく、メモリが許す限り追加可能です。一般的な用途では制限を気にする必要はありません。
Python用語集|リストの定義と要素追加に関する用語一覧
今回の記事で出てきた用語・関数などを一覧で紹介します。
このサイトに出てくる 全てのPython用語をまとめた用語集 も活用してください。
Python用語 | 定義・使い方の概要 | 解説記事へのリンク |
---|---|---|
リスト | 複数の値を順序付きで格納できる可変のデータ構造。角括弧 [] で表現される | 本記事 |
インデックス | シーケンス型(例:リスト)の要素にアクセスするための番号。0から始まる | 本記事 |
append() メソッド | リストの末尾に要素を追加するメソッド | 本記事 |
extend() メソッド | 他のリストやイテラブルの要素を、呼び出し元のリストに追加するメソッド | 本記事 |
insert() メソッド | 指定した位置に要素を挿入するメソッド | 本記事 |
メソッド | 特定のデータ型のオブジェクトに結び付いた関数で、ドット記法で呼び出される | Lesson5-2 |