Python:文字列を結合するjoin()の使い方

Python:文字列を結合するjoin()の使い方

Pythonのjoinメソッドとは、文字列や数値を結合する時に使います。
ちなみにjoinは英語の「結合する、つなぐ」の意味です。

joinメソッドの使い方

ここでは、joinメソッドで文字列を連結(結合)する使い方を解説します。

joinの記述方法

joinは主にリストの値を結合する時に使います。(タプル等でも可能です。)
joinの記述方法は以下の通りです。

変数名 = ‘区切り文字’.join(リスト名)

区切り文字が必要が無ければ指定しなくても大丈夫です。

文字列要素の連結(結合)

実際にjoin関数を使って文字列を連結してみます。

記述例

>>> nice_stick = ['うまい棒が','大好き','です。']
>>> umaibo = ''.join(nice_stick)
>>> print(umaibo)
うまい棒が大好きです。

join()を使わずにfor文で繰り返し処理を行えば同じ結果を得ることはできますが、
コードが複数行となりますが、Joinを使うと1行のコードですみます。

任意の区切り文字で結合

「’’」内に任意の区切り文字を指定すれば、各要素を指定した区切り文字で結合できます。

記述例

>>> today = ['2020','4','20']
>>> today2 = '-'.join(today)
>>> print(today2)
2020-4-20

数値は文字列に変換して連結・結合

数値をそのまま結合しようとするとエラーになります。

エラー記述例

>>> today = [2020,4,20]
>>> today2 = '-'.join(today)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: sequence item 0: expected str instance, int found

「文字列だと思ってたのに整数じゃねーか!」とpython殿下が怒ってます。

ということで、数値は文字列に変換しましょう。
文字列への変換方法は2つあります。

1つ目は先ほどの日付の結合で使用した、2020などの数値を「’’」で囲う事で文字列として処理されるため、エラーは発生しません。

2つ目はstr()関数を使って数値を文字列に変更してから結合する方法です。

記述例

>>> today = [2020,4,20]
>>> today3 = '-'.join([str(today2) for today2 in today])
>>> print(today3)
2020-4-20

pythonカテゴリの最新記事