【毎日Python】Pythonで複数の文字列を置換する方法|translate

Pythonで複数の文字を置き換える方法です。
使用するのは、Pythonの組み込み関数のtranslateメソッドです。
まず、このような文字列を作成します。

a = 'cool-language-python'

translateメソッドでは、引数にstr.maketrans関数を指定します。
続けて、str.maketrans関数の第一引数に置き換えたい文字、第二引数に置き換え後の文字を指定します。
今回の場合、小文字のoが大文字のO、小文字のaが大文字のAに置き換わります。
実行します。
1文字ずつ置き換えることができました。

a.translate(str.maketrans('OA', 'oa','-'))

実行結果:

cOOl-lAnguAge-pythOn

文字列から指定の文字を削除することもできます。
第三引数に削除したい文字を指定します。
実行します。
ハイフンを削除することができました。

a.translate(str.maketrans('OA', 'oa','-'))

実行結果:

coollanguagepython

なお、文字列を置き換えるメソッドとして、replaceメソッドがあります。
replaceメソッドでは、このように2文字以上の文字列を置き換えることができます。

a = 'cool-language-python'

a.replace('python','SQL')

実行結果:

cool-language-SQL

また、変換後の文字列に空の文字列を指定すると、その文字列を削除することができます。

a.replace('-','')

実行結果:

coollanguagepython

関連メソッド

【毎日Python】Pythonで文字列を置換する方法|str.replace