古い方法
Python 2.6 より前では、フォーマット文字列を使用する方法は比較的単純でしたが、受け取ることができるパラメータの数は限られていました。これらのメソッドは Python 3.3 でも引き続き機能しますが、これらのメソッドは完全に段階的に廃止されるという暗黙の警告があり、明確なスケジュールはまだありません。
整形浮動小数点:
pi = 3.14159 print(" pi = %1.2f ", % pi)
複数の置換値:
s1 = "cats" s2 = "dogs" s3 = " %s and %s living together" % (s1, s2)
引数が不足しています:
古い書式設定方法では、文字列の書式設定で「TypeError: 引数が足りません」というエラーがよく発生します。 , 置換変数の数を数え間違えていたため、次のようなコードを書くときに変数を見逃しやすいからです。
set = (%s, %s, %s, %s, %s, %s, %s, %s) " % (a,b,c,d,e,f,g,h,i)
新しい Python 形式文字列では、番号付きパラメーターを使用できるため、パラメーターの数を数える必要がありません。
set = set = " ({0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}) ".format(a,b,c,d,e,f,g)
辞書文字列フォーマットに基づくPython 2.x
"%(n)d %(x)s" %{"n":1, "x":"spam"} reply = """ Greetings... Hello %(name)s! Your age squared is %(age)s """ values = {'name':'Bob', 'age':40} print rely % values
Python 3.xフォーマットメソッドフォーマット
template = '{0},{1} and {2}' template.format('spam','ham','eggs') template = '{motto}, {pork} and {food}' template.format(motto='spam', pork='ham', food='eggs') template = '{motto}, {0} and {food}' template.format('ham', motto='spam', food='eggs') '{motto}, {0} and {food}'.format(42, motto=3.14, food=[1,2,3])
Python のその他の文字文字列の書式設定方法については、PHP 中国語 Web サイトの関連記事に注目してください。