【Python】文字列を連結・結合する方法

PythonのTopに戻る


 

 「+」演算子を使う

文字列は + 演算子を用いて連結することができる。感覚的にはこれが最も分かりやすいだろう。以下は日付を取得して表示するコードである。

import datetime

td = datetime.datetime.today()
print("今日は"+str(td.year)+"年"+str(td.month)+"月"+str(td.day)+"日です。")
# 今日は2021年9月19日です。

+と文字列の間にスペースは有っても無くても良い。また、連結する文字列の個数には特に制限は特に無いと思われる。

 

 f文字列を使う

「f文字列」(f-string)はPython3.6以降で導入された記法で、最新バージョンのPythonならf文字列を使う方が好ましいとされる。

x = 1
y = 2
print(f'x={x}, y={y}, x+y={x+y}')
# x=1, y=2, x+y=3

※「f文字列」による構文をPythonの文字列のデフォルトにしてはどうかという流派があるらしい。実際、この書き方は機械語に直す際に負担が少ないとされ、f文字列は%書式やformat指定よりも見やすく実効速度が速いことをウリにしている(ただしこれは環境にも依存するので意見の分かれるところ)。

 

 formatメソッドを使う

中括弧(波括弧ともいう){} で囲まれた「置換フィールド」を埋め込み、format( ) メソッドの引数で {} の部分を置換する。

print("{0}さんの身長は{1}cm、体重は{2}kgです。".format("太郎", 178, 65.2))
# 太郎さんの身長は178cm、体重は65.2kgです。

参考:printで出力のformatを指定する

 

 printの区切り文字を変更する

Pythonのデフォルトではprint関数に複数の引数を渡したとき、各要素はスペースによっては隔てられて出力される。このスペースを取り除くには、オプション引数の sep(セパレータ)に空文字列を指定すれば良い(”\0″ としてNULLを指定しても同じ)。

print("Sri", "Jayawardenepura", "Kotte", sep="")
# SriJayawardenepuraKotte

PythonのTopに戻る