プログラミングの用語一覧へ
このページの目次

リストとは?

読み方:リスト

最終更新:2026/08/18

3秒でわかる

複数の値を順番付きで並べて持つデータ構造。0 から始まる添字で取り出せ、あとから要素を足したり消したりして長さを変えられます。

もう少し詳しく

どういうものか

値を一列に並べ、それぞれに 0 から始まる位置番号を振って管理するデータ構造。Python の list、JavaScript の Array、Java の ArrayList がこれにあたる。並び順が保たれること、同じ値を何個入れてもよいこと、長さがあとから変えられることが特徴になる。

内部の作りは 2 系統ある。1 つは要素をメモリ上に連続して置く配列で、添字での取り出しが一定時間で終わる。もう 1 つは各要素が次の要素の場所を指す連結リスト型で、途中への挿入が速い。Python や JavaScript の標準のリストは前者に近い。

なぜ必要か

変数を name1、name2、name3 と増やしていくやり方は、件数が実行時まで決まらない場面で破綻する。リストにまとめれば、何件あっても 1 つの名前で扱え、繰り返し処理をそのまま当てられる。ファイルの各行、API の返す配列、フォームの選択肢など、扱うデータはたいてい「同じ種類のものが不定個」の形をしている。

具体例

scores = [72, 88, 95, 60] print(scores[0]) # 72 先頭は 0 番 print(scores[-1]) # 60 後ろから数える書き方 print(len(scores)) # 4 scores.append(80) # 末尾に追加 -> [72, 88, 95, 60, 80] scores.insert(1, 100) # 1番目に割り込み -> [72, 100, 88, 95, 60, 80] del scores[2] # 2番目を削除 for s in scores: print(s) high = [s for s in scores if s >= 80] # 条件で絞った新しいリスト print(sum(scores) / len(scores)) # 平均

つまずきやすいところ

添字が 0 から始まる点は、4 件のリストの最後が scores[4] ではなく scores[3] になるという形で必ず一度は引っかかる。

もう 1 つ厄介なのが、ループで回している最中に同じリストから要素を消す操作。削除のたびに後ろの要素が前へ詰まるため、走査が 1 つ飛ばしになる。新しいリストを作って入れ替えるほうが安全になる。

Python では代入がコピーではない点も落とし穴になる。b = a と書いた b は a と同じ実体を指すので、b を変えると a も変わる。切り離すには list(a) のように新しいリストを作る。

似た用語との違い

構造順番重複主な用途
リストあり並び順のある一覧
集合なし不可含まれるかの判定
辞書挿入順キーは不可キーで引く対応表

知識のつながり

サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

現在地リストプログラミング

LEARN BY DOING

この用語を、教材で使ってみる

直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

このコースが入っている学習分野

Pythonコースの全編を見る