目次
文字列に値を埋め込むとは?
変数として設定している値を、文字列に埋め込む方法をご紹介しています
テキストを自由自在に変更したり、データ加工の結果によって値を変えることができます
変数を文字列に埋め込む方法
変数を文字列に埋め込むにはformatメソッドを利用します
また値を埋め込みたい場所を明示するために{ }を使いましょう
まずはxという変数に「Python」という文字列を代入します
x = 'Python'
続いて「私は○○を勉強しています」という文字列に対して、formatメソッドを適応させます
自由に変えたい部分「○○」には{ }を記述しましょう
そしてformatの引数には、事前に作ったxの変数を指定します
print('私は{}を勉強しています'.format(x))
※最後にprintを使い文章を返す設定にしましょう
元のテキスト部分「私は○○を勉強しています」 も変数化しておくこともできます
text = '私は{}を勉強しています'
x = 'Python'
print(text.format(x))
3つのformatの使い方
formatメソッドでは{ }の部分に値を埋め込みますが、{ }を置換フィールドと呼びます
置換フィールドの指定方法には3種類あり、複数の変数を扱うことも可能です
① { } 置換フィールドのみ
変数を事前に用意しておき、それを{ }の中に埋め込む設定をします
formatの引数には変数を記述します
{ }の中に変数が自動的に埋め込まれます
x = 'Python'
print('私は{}を勉強しています'.format(x))
2つ以上の変数を埋め込む場合は、引数を2つ設定することで値が順番に格納されます
x = 'Python'
y = 3
print('私は{}を勉強して{}日です'.format(x,y))
② {1} フィールド番号を指定
複数の値を埋め込む場合は、明確に埋め込む場所を指定しましょう
{ }の中に番号を指定することで、引数の順番を指定することができます
x = 'Python'
y = 3
print('私は{0}を勉強して{1}日です'.format(x,y))
「0」から始まり、引数の順番に値が埋め込まれます
③ {text} フィールド名を指定
フィールド番号と同様に、埋め込む場所を明確に指定するために、フィールド名を利用することもできます
{ }の中に特定の文字列を記載し、formatの引数の中で「どの変数を埋め込むか」を=イコールで指定します
x = 'Python'
y = 3
print('私は{x}を勉強して{y}日です'.format(x=x,y=y))
おすすめの記述方法
指定方法に関しては③のフィールド名を指定することをおすすめします
コードを複雑に記述していくと、どの文字列にどの変数が埋め込まれるか分からなくなるためです
分かりやすいように変数名も工夫すると良いでしょう
programming = 'Python'
days = 3
print('私は{programming}を勉強して{days}日です'.format(programming=programming,days=days))
実例:今日の日付を値に埋め込む
最後に今日の日付を自動的に値に埋め込む方法をご紹介します
datetimeのtodayで今日の日付を取得します
日付が変わっても、当日の日付を自動的に取得することができます
from datetime import datetime, date
today = date.today().strftime('%Y-%m-%d')
print(today)
そしてこの変数をformatメソッドを利用して、文字列に埋め込みます
text = '最終更新日は{today}です'
print(text.format(today=today))
まとめ
今回はformatメソッドを利用して、変数の値を文字列に埋め込む方法をご紹介してきました
応用の利く記述方法なのでぜひ使ってみてください