Python 文字列を結合するサンプル

Pythonの文字列を結合するサンプルです。(確認環境:Python 3)

目次

文字列 +演算子で結合する
  文字列リテラルを並べて結合する
  数値と文字列を結合する
  代入演算子で結合する(+=)
  文字列を繰り返す(*)
  頭ゼロをつける(zfill)
  値を埋め込んで文字列を結合する(formatメソッド)
  値を埋め込んで文字列を結合する(f文字列)
  値を埋め込んで文字列を結合する(%演算子)
  改行がある文字列を変数にセットする('''/""")

+演算子で結合する

文字列 + 文字列
# coding: utf-8

print('あいう' + 'えお') # あいうえお

a = 'えお'
print('あいう' +  a) # あいうえお

+演算子は、文字列リテラルどうしまたは文字列と変数を結合します。

文字列リテラルを並べて結合する

文字列 文字列
# coding: utf-8

print('あいう' 'えお') # あいうえお

a = 'えお'
# print('あいう' a) # エラーになります

文字列リテラルどうしは、半角スペースのみで並べて結合できます。

数値と文字列を結合する

str(数値) + 文字列
# coding: utf-8

a = 1

# print(a + "です") # エラーになります
print(str(a) + "です") # 1です

5行目は、数値と文字列の結合でエラーになります。
6行目は、str関数で数値を文字列にして、+演算子で結合しています。文字列が表示されます。

代入演算子で結合する(+=)

変数 += 文字列
# coding: utf-8

a = 'あいう'
a += 'えお'

print(a) # あいうえお

代入演算子(+=)で文字列を結合しています。

文字列を繰り返す(*)

文字列 * 数値
# coding: utf-8

a = 'あいう'

print(a * 2) # あいうあいう

アスタリスク(*)は、文字列を繰り返します。

頭ゼロをつける(zfill)

文字列.zfill(桁数)
# coding: utf-8
a = "9"
print(a.zfill(3))  # 009が出力される
print(a.zfill(5))  # 00009が出力される

b = "90"
print(b.zfill(3))  # 090が出力される
print(b.zfill(5))  # 00090が出力される

zifllは頭ゼロをつけます。対象は文字列である必要があります。

値を埋め込んで文字列を結合する(formatメソッド)

"文字列{}".format(引数)
# coding: utf-8

a = "red"
b = "blue"

print("赤は{}で青は{}です".format(a,b)) #赤はredで青はblueです

formatメソッドで文字列の中にある{}の中に値を埋め込みます。
https://docs.python.org/ja/3/library/stdtypes.html#str.format

値を埋め込んで文字列を結合する(f文字列)

f"文字列{変数}"

f文字列は値を埋め込んで文字列を結合します。
バージョン 3.6 で追加されました。

# coding: utf-8

a = "red"
b = "blue"

print(f"赤は{a}で青は{b}です") #赤はredで青はblueです

6行目は、先頭にfがあります。変数の値を{}の中に埋め込みます。
上記のformatメソッドより簡潔に記述できます。
https://docs.python.org/ja/3/tutorial/inputoutput.html#tut-f-strings
https://docs.python.org/ja/3/reference/lexical_analysis.html#formatted-string-literals

値を埋め込んで文字列を結合する(%演算子)

%演算子で値を埋め込んで文字列を結合できます。

# coding: utf-8

a = "赤"
b = "青"

print("%sと%sの%dつです" % (a,b,2)) # 赤と青の2つです

%sは文字列で%dは整数を表します。

改行がある文字列を変数にセットする('''/""")

'''文字列'''
"""文字列"""

シングルコーテーションまたはダブルコーテーションを3つ続けます。

# coding: utf-8

a = '''あい
うえ
お'''
print(a) # あい うえ お

b = """かき
くけ
こ"""
print(b) # かき くけ こ

3~5行目は、シングルコーテーション(')の3つを文字列の最初と最後に付与しています。
8~10行目は、ダブルコーテーション(")の3つを文字列の最初と最後に付与しています。

関連の記事

Python 文字列の位置を取得する(find/index)
Python エスケープシーケンスとraw文字列のサンプル
Python 文字列の先頭と末尾を削除(strip/lstrip/rstrip)
Python 文字列の一部を取得する(スライス)

△上に戻る