Python でリストの前に付ける
- 
          
            Python でリストの前置に insert()メソッドを使用する
- 
          
            Python でリストを前置するには deque.appendleft()メソッドを使用する
- Python でリストに追加する新しいリストを作成する
 
このチュートリアルでは、Python でリストを前置する方法を説明します。また、このチュートリアルでは、リストへの複数の前置方法を説明するためのコード例をいくつか挙げています。
Python でリストの前置に insert() メソッドを使用する
    
insert() を使用することは、一般的で最もよく使われているアプローチの一つです。insert() は list ライブラリで提供されています。list.insert(pos, element) はパラメータとして pos と element の 2つの引数を取ります。pos は要素の位置を定義します。
このメソッドを利用するコード例を以下に示します。
lists = ["james", "tim", "jin"]
lists.insert(0, "steve")
print(lists)
出力:
['steve', 'james', 'tim', 'jin']
しかし、list.insert() 操作で消費される時間は少し多めです。時間的なパフォーマンスを向上させるには、collections.deque メソッドを使用することができます。
Python でリストを前置するには deque.appendleft() メソッドを使用する
Python の collections モジュールは複数のデータ構造を提供します。Python 2.4 では、collections にダブルエンドキューである deque() が追加されています。これはコンテナのようなリストで、追加処理やポップアップ処理を効率的に行うことができます。データ構造体 deque には appendleft(element) メソッドがあります。これは要素を受け取り、それをリストの先頭に追加します。
このメソッドのコード例を以下に示します。
import collections
dequeue = collections.deque([5, 2, 6, 8, 1])
print(dequeue)
dequeue.appendleft(10)
print(dequeue)
出力:
deque([5, 2, 6, 8, 1])
deque([10, 5, 2, 6, 8, 1])
Python でリストに追加する新しいリストを作成する
非常に単純で簡単な解決策としては、例えばリストの 0 番目のインデックスに目的の要素 x を持つ新しいリストを作成することができます。もちろん、リストに x を前置するのではなく、リストの最初の位置にすでに x がある状態で新しいリストを作成します。
このアプローチの基本コードを以下に示します。
lists = ["james", "tim", "jin"]
new_list = ["x"] + lists
print(new_list)
出力:
['x', 'james', 'tim', 'jin']
Python でリストを前置するためにリストスライシングを使用する
リストのスライスは、リストに前置するもう一つの方法です。要素に 0 番目 のスライスを代入することで、リストの前に要素が追加されます。
このメソッドのコード例は以下の通りです。
temp_list = [4, 5, 8, 10, 13]
print(temp_list)
temp_list[:0] = [12]
print(temp_list)
出力:
[4, 5, 8, 10, 13]
[12, 4, 5, 8, 10, 13]
Syed Moiz is an experienced and versatile technical content creator. He is a computer scientist by profession. Having a sound grip on technical areas of programming languages, he is actively contributing to solving programming problems and training fledglings.
LinkedIn