Python文字列フォーマット
文字列が期待どおりに表示されることを確認するために、format()
メソッドを使用して結果をフォーマットできます。
文字列format()
このformat()
メソッドを使用すると、文字列の選択した部分をフォーマットできます。
時々、あなたが制御できないテキストの部分があります、多分それらはデータベースまたはユーザー入力から来ますか?
{}
このような値を制御するには、テキストに
プレースホルダー(中括弧)を追加し、次のformat()
メソッドで値を実行します。
例
価格を表示するプレースホルダーを追加します。
price = 49
txt = "The price is {} dollars"
print(txt.format(price))
中括弧内にパラメータを追加して、値の変換方法を指定できます。
例
表示する価格を小数点以下2桁の数値としてフォーマットします。
txt = "The price is {:.2f} dollars"
String format()リファレンスですべてのフォーマットタイプを確認してください。
複数の値
より多くの値を使用する場合は、format()メソッドに値を追加するだけです。
print(txt.format(price, itemno, count))
さらにプレースホルダーを追加します。
例
quantity = 3
itemno = 567
price = 49
myorder = "I want {} pieces of
item number {} for {:.2f} dollars."
print(myorder.format(quantity, itemno, price))
インデックス番号
インデックス番号(中括弧内の数字{0}
)を使用して、値が正しいプレースホルダーに配置されていることを確認できます。
例
quantity = 3
itemno = 567
price = 49
myorder = "I want {0} pieces of
item number {1} for {2:.2f} dollars."
print(myorder.format(quantity, itemno, price))
また、同じ値を複数回参照する場合は、インデックス番号を使用してください。
例
age = 36
name = "John"
txt = "His name is {1}. {1} is {0} years old."
print(txt.format(age,
name))
名前付きインデックス
中括弧内に名前を入力して名前付きインデックスを使用することもでき{carname}
ますが、パラメータ値を渡すときは名前を使用する必要があります
txt.format(carname = "Ford")
。
例
myorder = "I have a {carname}, it is a {model}."
print(myorder.format(carname
= "Ford", model = "Mustang"))