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 += "文字列"

「+=」演算子を使った連結手法は便利なので、ぜひ使いこなしてください。

Python