Python: 文字列を連結する +, +=
Pythonで文字列を連結する方法を紹介します。 通常は「+」演算子を使って連結しますが、 自分自身と他の文字列を結合する場合は「+=」演算子も使用できます。
「+」演算子: 文字列を連結
Pythonで文字列を連結する場合は「+」演算子を使います。 「+」演算子は「+」の左右が数値の場合には数値の加算を行いますが、 「+」の左右が文字列の場合には文字列を連結します。
s = "hello" + " world!" print(s) # hello world!
2つの文字列だけでなく、3つ以上の文字列連結もできます。
s = "a" + "b" + "c" print(s) # abc
文字列型と数値型の連結はエラーになる
Pythonでは文字列型と数値型を連結しようとするとエラーになります (JavaScriptなど、自動で変換してくれる言語もありますが、 Pythonではエラーになります)。
# エラーになる s = 100 + "円です。" # エラーメッセージ TypeError: unsupported operand type(s) for +: 'int' and 'str'
この場合は、次のようにstr()関数を使って、 数値型をで文字列型に変換する必要があります。
s = str(100) + "円です。" print(s) # 100円です。
「+=」演算子: 自分自身と他の文字列を連結
「+=」演算子を使うと、自分自身と他の文字列を連結させることができます。
まずは「+」演算子を使った例です。
s = "hello" s = s + " world!" print(s) # hello world!
上のコードは「+=」演算子を使うと次のように記述できます。 「+=」の左側に自分自身、右側に連結したい文字列を記述します。
s = "hello"
s += " world!"
print(s) # hello world!
つまり次の2つの行は同じ意味です。 「+=」演算子を使うとコードがシンプルになります。
s = s + "文字列" s += "文字列"