ホームページ >バックエンド開発 >Python チュートリアル >Python でのフォーマットされた出力の使用法の概要
この記事の例は、Python でのフォーマットされた出力の使用法を要約しています。参考のために皆さんと共有してください。詳細は次のとおりです:
Python には合計 2 つのフォーマットされた出力構文があります。
1 つは、Formattting Expression と呼ばれる C 言語の printf に似たメソッドです
>>> '%s %d-%d' % ('hello', 7, 1) 'hello 7-1'
もう 1 つは、String Formatting Method Calls と呼ばれる C# に似たメソッドです
>>> '{0} {1}:{2}'.format('hello', '1', '7') 'hello 1:7'
最初のメソッドは、浮動小数点数の精度を指定できます。たとえば、次のようになります。
>>> '%.3f' % 1.234567869 '1.235'
実行時に浮動小数点数の精度を動的に指定します
しかし、コードの実行時にパラメータを通じて浮動小数点数の精度を動的に指定するにはどうすればよいでしょうか?
Python の魔法は、非常に便利な構文を提供することです。型コード (ここでは f) の前に * を追加するだけで、浮動小数点数の精度はその前の数値によって指定されます。
>>> for i in range(5): ... '%.*f' % (i, 1.234234234234234) ... '1' '1.2' '1.23' '1.234' '1.2342'
出力結果からわかるように、精度は実行時に動的に指定されるため、フォーマット文字列をつなぎ合わせる必要がなくなります。
関数をより簡潔に完了するには、文字列フォーマットメソッド呼び出しを使用します。
>>> for i in range(5): ... '{0:.{1}f}'.format(1 / 3.0, i) ... '0' '0.3' '0.33' '0.333' '0.3333'
シンプルなテンプレートツールの実装
Django が提供するテンプレート言語を使用すると、dict (辞書) を通じて Python 変数を HTML ファイルにバインドできます。実際、Python の書式設定された出力を使用して、単にテキストの Replace 関数を作成することもできます。 。
>>> replay = """ ... Hello World Cup... ... Germany vs Brazil ... %(germany)d : %(brazil)d""" >>> print(replay % {'germany': 7, 'brazil': 1}) Hello World Cup... Germany vs Brazil 7 : 1
こんな遊びもできます
>>> germany = 7 >>> brazil = 1 >>> '%(germany)d : %(brazil)d' % vars() '7 : 1'
書式設定された文字列内のオブジェクト属性と辞書キー値にアクセスします
>>> 'My {1[kind]} runs {0.platform}'.format(sys, {'kind': 'pc'}) 'My pc runs linux' >>> 'My {map[kind]} runs {sys.platform}'.format(sys=sys, map={'kind': 'pc'}) 'My pc runs linux'
書式設定された文字列内の添字(正の整数)を介してリスト要素にアクセスします
>>> somelist = list('SPAM') >>> 'first={0[0]}, third={0[2]}'.format(somelist) 'first=S, third=A' >>> 'first={0}, last={1}'.format(somelist[1], somelist[-1]) 'first=P, last=M' >>> parts = somelist[0], somelist[-1], somelist[1:-1] >>> 'first={0}, last={1}, middle={2}'.format(*parts) "first=S, last=M, middle=['P', 'A']" >>>
上記はPython フォーマットされた出力の使用法の概要。関連コンテンツの詳細については、PHP 中国語 Web サイト (www.php.cn) に注意してください。