Python|extend()関数の使い方

スポンサーリンク

1. はじめに

本記事では、Pythonのextend()関数の使い方について解説します。
Pythonでリストに要素を追加する方法にはいくつかありますが、extend()複数の要素をまとめて追加できる便利な関数です。
特に、別のリストやイテラブルなデータ(タプル、集合、文字列など)をまとめてリストに取り込みたいときに役立ちます。

この記事を読むことで以下のポイントが学べます。

  • extend()関数の基本的な使い方
  • append()との違い
  • よくある応用例と実務での活用方法
  • エラーを避けるための注意点

 

2. Python|extend()関数の基本解説

extend()関数は、リストに複数の要素を一度に追加するためのメソッドです。
基本構文は以下の通りです。

リスト.extend(追加するイテラブル)

イテラブルには、リスト・タプル・集合・文字列などを渡せます。

基本的なコード例

# extend()の基本例
fruits = ["apple", "banana"]
more_fruits = ["orange", "grape"]

# リストにリストを追加(要素単位で展開される)
fruits.extend(more_fruits)

print(fruits)

実行結果:

['apple', 'banana', 'orange', 'grape']

このように、extend()を使うとリストが展開され、1つずつの要素として追加されます。
これがappend()との大きな違いです。

append()との違い

append()はリストそのものを1要素として追加するのに対し、extend()は要素を展開して追加します。

# append()を使用
fruits = ["apple", "banana"]
fruits.append(["orange", "grape"])
print(fruits)  # ネストされたリストが追加される

# extend()を使用
fruits = ["apple", "banana"]
fruits.extend(["orange", "grape"])
print(fruits)  # 要素が展開されて追加される

実行結果:

['apple', 'banana', ['orange', 'grape']]
['apple', 'banana', 'orange', 'grape']

この違いを理解しておくことで、用途に応じて適切に使い分けられます。

 

 

3. よくある使い方・応用例

リストの結合

リストを結合する際にextend()を利用すると、簡単にまとめることができます。

# 複数のリストをまとめる
list1 = [1, 2, 3]
list2 = [4, 5]
list3 = [6, 7]

# list1にlist2とlist3の要素を追加
list1.extend(list2)
list1.extend(list3)

print(list1)

実行結果:

[1, 2, 3, 4, 5, 6, 7]

文字列を分解して追加

文字列はイテラブルとして扱えるため、extend()で文字単位に展開して追加できます。

letters = ["a", "b"]
letters.extend("cd")  # 文字列を展開して追加
print(letters)

実行結果:

['a', 'b', 'c', 'd']

集合(set)を追加

setもイテラブルとして扱えるので、extend()で要素を追加できます。

numbers = [1, 2, 3]
extra = {4, 5, 6}
numbers.extend(extra)
print(numbers)

実行結果:

[1, 2, 3, 4, 5, 6]

このように、異なるイテラブルから要素をまとめたい場合に便利です。

実務での活用例

  • ログファイルやCSVのデータをまとめてリストに格納
  • スクレイピングで取得した複数ページの結果を1つのリストに集約
  • ループ処理の中でデータをまとめて追加

 

4. 注意点・エラー対策

イテラブル以外を渡すとエラー

extend()にはイテラブル(リスト、タプル、文字列など)しか渡せません。
数値をそのまま渡すとエラーになります。

nums = [1, 2, 3]
nums.extend(4)  # 数値はイテラブルではない

実行結果:

TypeError: 'int' object is not iterable

この場合、リストに包んで渡す必要があります。

nums = [1, 2, 3]
nums.extend([4])  # リストにして渡す
print(nums)

実行結果:

[1, 2, 3, 4]

append()と誤用しない

単一要素を追加したい場合はappend()を使いましょう。
extend()は複数要素を追加するためのものです。

 

5. まとめ

本記事ではPythonのextend()関数の使い方を解説しました。
重要なポイントは以下の通りです。

  • extend()はリストに複数の要素を追加できる
  • append()はリストそのものを追加するため挙動が異なる
  • リスト・タプル・集合・文字列などイテラブルを渡せる
  • 数値を直接渡すとエラーになるため注意

実務では、データの統合や複数リストの結合で大いに役立ちます。
Python学習を進める上で、extend()をしっかり理解しておくとリスト操作がよりスムーズになるでしょう。

タイトルとURLをコピーしました