Pythonで文字列を結合する(+、join、format):f文字列に変数を代入してみよう
2023.02.18
Python では +
で文字列を結合できます。
x = 'abc'
y = 'facebook'
z = x + y
print(z) # abcfacebook
x と y の間に半角のスペースを入れたいときは次のようにします。
x = 'abc'
y = 'facebook'
z = x + ' ' + y
print(z) # abc facebook
スペースがきちんと入りました。
Python の文字列リストは join で結合する
複数の文字列を特定の文字列を接着剤にして結合したいときは join を使います。
x = 'abc'
y = 'facebook'
z = ' '.join([x, y])
print(z) # abc facebook
join は、接着剤にする文字列から関数を呼びだします。上のコードでも半角スペースという文字列から join を使っていますね。中にくっつけたい文字列のリストを入れます。次のコードはエラーです。
x = 'abc'
y = 'facebook'
z = ' '.join(x, y)
# TypeError: join() takes exactly one argument (2 given)
文字列をそのまま入れると TypeError になります。
問題:Python、JavaScript、Cをドルマークで結合しなさい
まずは文字列のリストを作り、ドルマークから join を呼びます。
x = ['Python', 'JavaScript', 'C']
y = '$'.join(x)
print(y)
# Python$JavaScript$C
Python の文字列はそのまま結合できる
Python の文字列は +
で結合しますが、実は文字列をそのままつなげるだけで結合します。
x = 'Python''JavaScript'
print(x)
# PythonJavaScript
他のプログラミング言語からきた人は違和感を持つかもしれません。改行したいときはバックスラッシュを使います。
x = 'Python' \
'JavaScript'
print(x)
# PythonJavaScript
Python の標準出力でよく使う format は文字列の結合に使える
Python プログラマーになって最初に驚いたことは format が文字列の結合に使えることでした。
x = 'I am {0}'.format('Apple')
print(x)
# I am Apple
Apple という文字列が {0}
に入っています。複数の文字列を埋めこむことも可能です。
x = 'I am {0}. You are {1}.'.format('Steve', 'Jobs')
print(x)
# I am Steve. You are Jobs.
次の書き方はもっとトリッキーかもしれません。
a = 'Bill'
x = f'I am {a} Gates.'
print(x)
# I am Bill Gates.
文字列を宣言するときに f から始めると、その文字列に変数を埋めこむことができます。