Python | replace()でリスト(配列)の値を置き換える方法

Python リスト,Python

Python | replace()でリスト(配列)の値を置き換える方法

Pythonのreplace()メソッドを使ってリスト(配列)の値を指定した文字列で置き換える方法とサンプルコードを紹介しています。

確認環境

Windows11 ローカル
Python python-3.11.1

リスト(配列)の値を置き換える

Pythonでリストにある文字列から特定の文字列を指定した文字列に置き換えるにはreplace()メソッドが利用可能です。

第一引数に変換前の文字列、第二引数に変換後の文字列を指定します。

data.replace(変換前の文字列, 返還後の文字列)

例えばリストの中の「Pine」を「Banana」に変換するには以下のように記述します。

data = ['Apple', 'Pine', 'Banana']
new_data =[]
for str in data:
	new_data.append(str.replace('Pine', 'Orange'))

print(new_data)
# ['Apple', 'Orange', 'Banana']

※ replace()を使った置き換えの場合、完全一致でなくても変換が行われます。ケースによっては別の方法で置き換えをした方が良いかもしれません。

※ 上記のサンプルコードのままでは、第三引数に置き換える回数を指定しても最初のひとつだけを置き換えるという事はできないので注意が必要です。別途判定コードの追加や他の置き換え方法を使う必要があります。

複数の置き換えセットを同時に置き換える

複数セットの変換を実行するには、つなげて記述する方法があります。

以下のサンプルコードでは「Pine」は「Orange」、「Banana」は「Grape」となります。

data = ['Apple', 'Pine', 'Banana']
new_data =[]

for str in data:
	new_data.append(str.replace('Pine', 'Orange').replace('Banana', 'Grape'))

print(new_str)
# ['Apple', 'Orange', 'Grape']