文字列操作

【Python】文字列操作:join() で文字列を連結(結合)する

嫁ちゃん
嫁ちゃん

文字列を繋(つな)ぎあわせたいんですけど?

わたし
わたし

join() メソッドを使えば簡単に繋ぎあわせることができるよ。

はじめに

join() メソッドを使えば、要素間(文字と文字の間(あいだ))にセパレータ(区切り文字)を入れることもできます。文字列の連結なので、数値がリストに含まれているとエラーが出力されます。

用法

str.join(iterable)

iterable 中の文字列を結合した文字列を返します。 iterable に bytes オブジェクトのような非文字列の値が存在するなら、 TypeError が送出されます。要素間のセパレータは、このメソッドを提供する文字列です。

組み込み型 – Pythonドキュメント から引用

Python
lst = ['This', 'is', 'a', 'pen.'] print(' '.join(lst))

セパレータ(区切り文字)としてスペースが挟まれましたね。

実行結果
This is a pen.

リスト要素に数値が含まれている場合、エラーが出力されます。その差異は、文字列に変換してから連結(結合)する必要があります。

Python
lst = ['aaa', 123, 'bbb'] print('-'.join(str(m) for m in lst)) # str型へ変換し連結
実行結果
aaa-123-bbb

map関数を使って文字列に変更することもできます。

Python
tel = [123, 456, 789] tel = map(str, tel) print('-'.join(tel))
実行結果
123−456−789

join() メソッドの引数は iterable(イテラブル)ですので、for文などで繰り返し可能な型を渡すことができます。以下の例では、文字列を連結しています。

Python
s = 'abcde' print('-'.join(s))
実行結果
a-b-c-d-e

おわりに

嫁ちゃん
嫁ちゃん

文字列の連結(結合)ができたねー♪

わたし
わたし

数値の文字を連結するときは注意が必要だね。リストの中に数値が含まれているかわからない場合は、文字列に変換しておくといいね。

この記事がお役に立てましたら幸いです。
人気ブログランキングに参加しております。
よろしければクリックしていただけると嬉しいです。
にほんブログ村 IT技術ブログ Pythonへ
※本サイトに掲載する情報には充分に注意を払っておりますが、その内容について保証するものではありません。
※本サイトの使用ならびに閲覧によって生じたいかなる損害にも責任を負いかねます。

コメント

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