Pythonのリストは、複数の要素を一つにまとめて扱うための柔軟で強力なデータ構造です。リストはミュータブル(変更可能)であり、さまざまな要素の操作を行うための多くのメソッドと演算子が用意されています。以下に、Pythonのリストの基本操作から応用的な操作までを詳しく解説します。
リストの作成
空のリストの作成
my_list = []
# または
my_list = list()
要素を含むリストの作成
my_list = [1, 2, 3, 4, 5]
リストの要素へのアクセス
インデックスを使用したアクセス
my_list = [1, 2, 3, 4, 5]
print(my_list[0]) # 出力: 1
print(my_list[2]) # 出力: 3
負のインデックスを使用したアクセス
my_list = [1, 2, 3, 4, 5]
print(my_list[-1]) # 出力: 5
print(my_list[-2]) # 出力: 4
リストのスライス
リストの一部分を取得するためにスライスを使用します。
my_list = [1, 2, 3, 4, 5]
print(my_list[1:4]) # 出力: [2, 3, 4]
print(my_list[:3]) # 出力: [1, 2, 3]
print(my_list[3:]) # 出力: [4, 5]
print(my_list[::2]) # 出力: [1, 3, 5]
リストの変更
要素の変更
my_list = [1, 2, 3, 4, 5]
my_list[1] = 20
print(my_list) # 出力: [1, 20, 3, 4, 5]
スライスを使用した複数要素の変更
my_list = [1, 2, 3, 4, 5]
my_list[1:3] = [20, 30]
print(my_list) # 出力: [1, 20, 30, 4, 5]
リストの追加
append
メソッドを使用した要素の追加
my_list = [1, 2, 3]
my_list.append(4)
print(my_list) # 出力: [1, 2, 3, 4]
extend
メソッドを使用した複数要素の追加
my_list = [1, 2, 3]
my_list.extend([4, 5, 6])
print(my_list) # 出力: [1, 2, 3, 4, 5, 6]
insert
メソッドを使用した特定位置への要素の追加
my_list = [1, 2, 3]
my_list.insert(1, 1.5)
print(my_list) # 出力: [1, 1.5, 2, 3]
リストの削除
remove
メソッドを使用した要素の削除
my_list = [1, 2, 3, 4, 5]
my_list.remove(3)
print(my_list) # 出力: [1, 2, 4, 5]
pop
メソッドを使用した要素の削除
my_list = [1, 2, 3, 4, 5]
element = my_list.pop(2)
print(element) # 出力: 3
print(my_list) # 出力: [1, 2, 4, 5]
スライスを使用した複数要素の削除
my_list = [1, 2, 3, 4, 5]
my_list[1:3] = []
print(my_list) # 出力: [1, 4, 5]
clear
メソッドを使用した全要素の削除
my_list = [1, 2, 3, 4, 5]
my_list.clear()
print(my_list) # 出力: []
リストの検索
index
メソッドを使用した要素のインデックスの検索
my_list = [1, 2, 3, 4, 5]
index = my_list.index(3)
print(index) # 出力: 2
count
メソッドを使用した要素の出現回数のカウント
my_list = [1, 2, 3, 2, 4, 2]
count = my_list.count(2)
print(count) # 出力: 3
リストのソート
sort
メソッドを使用したリストのソート
my_list = [3, 1, 4, 1, 5, 9]
sorted_list = sorted(my_list)
print(sorted_list) # 出力: [1, 1, 3, 4, 5, 9]
print(my_list) # 出力: [3, 1, 4, 1, 5, 9]
sorted
関数を使用した新しいソート済みリストの生成
my_list = [3, 1, 4, 1, 5, 9]
sorted_list = sorted(my_list)
print(sorted_list) # 出力: [1, 1, 3, 4, 5, 9]
print(my_list) # 出力: [3, 1, 4, 1, 5, 9]
reverse
メソッドを使用したリストの逆順
my_list = [3, 1, 4, 1, 5, 9]
my_list.reverse()
print(my_list) # 出力: [9, 5, 1, 4, 1, 3]
リストのコピー
スライスを使用したリストのコピー
my_list = [1, 2, 3, 4, 5]
copied_list = my_list[:]
print(copied_list) # 出力: [1, 2, 3, 4, 5]
copy
メソッドを使用したリストのコピー
my_list = [1, 2, 3, 4, 5]
copied_list = my_list.copy()
print(copied_list) # 出力: [1, 2, 3, 4, 5]
リスト内包表記
リスト内包表記を使用して、新しいリストを生成することができます。詳細は前述のリスト内包表記の解説を参照してください。
例:0から9までの数の2乗を持つリストを作成する
squares = [x**2 for x in range(10)]
print(squares)
# 出力: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
まとめ
Pythonのリストは、柔軟で使いやすいデータ構造です。リストの作成、アクセス、変更、追加、削除、検索、ソート、コピー、リスト内包表記など、さまざまな操作を理解することで、効率的なプログラムを作成することができます。リストの操作方法を習得し、Pythonプログラミングのスキルを向上させましょう。
スポンサーリンク