文字列を連結・結合する方法
「+」演算子を使う
文字列は + 演算子を用いて連結することができる。感覚的にはこれが最も分かりやすいだろう。以下は日付を取得して表示するコードである。
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の区切り文字を変更する
Pythonのデフォルトではprint関数に複数の引数を渡したとき、各要素はスペースによっては隔てられて出力される。このスペースを取り除くには、オプション引数の sep(セパレータ)に空文字列を指定すれば良い(”\0″ としてNULLを指定しても同じ)。
print("Sri", "Jayawardenepura", "Kotte", sep="") # SriJayawardenepuraKotte