文字列をフォーマットするときは、%ではなくformat()方式を使用します.
7369 ワード
Pythonに内蔵されている
文字列形式で演算子を設定します.パーセント記号
%オペレータが文字列をフォーマットする場合、次のような一般的な使用法があります.直接フォーマット文字または数値 は、 をタプルとしてフォーマットする.辞書形式でフォーマット
文字列呼び出し方法format
フォーマット・ディスクリプタでよく使用される呼び出し方法は、
文字列フォーマットでの変換タイプ
を選択します.
意味
整数をバイナリとして表す
整数をUnicodeコードポイントとして解読
整数を10進数として処理します.これは整数のデフォルトで使用される説明子です.
科学的表現を用いて小数を表す(
小数を定数として表す
定点表現法と科学表現法の間で自動的に選択されます.これは小数にデフォルトで使用される説明子ですが、デフォルトでは少なくとも1桁の小数があります.
整数を8進数で表す
文字列のフォーマットは変更されません.これはデフォルトで文字列に使用される説明子です.
整数を16進数で表し、小文字で表す
数をパーセントで表す
format()メソッドのいくつかの一般的な使い方は以下の通りです.位置符号 を用いる.使用名 属性 を通過フォーマットメタグループの具体的な項目
%オペレータではなくformat方式を使用して文字列をフォーマットする理由は、次のとおりです. format方式は%オペレータよりも柔軟な を使用する. format方式は、パラメータとして容易に伝達できる .%は最終的にformat()方式に取って代わられる. %の方法は、特定の場合に特に注意する必要がある.
(最近更新:2019年04月11日)
%
とformat()
は、文字列のフォーマットに使用できます.文字列形式で演算子を設定します.パーセント記号
%
変換説明子によって規定されたフォーマットに従ってフォーマットされた文字列の列を返し、変換説明子の基本形式は:%[ ][ [. ]]
である.%オペレータが文字列をフォーマットする場合、次のような一般的な使用法があります.
print("The %s is a kind of %s." % ('apple', 'fruit')) # The apple is a kind of fruit.
person = {"name": "watkins", "address": "siso"}
print("The address of %(name)s is %(address)s." % person) # The address of watkins is siso.
文字列呼び出し方法format
print("The age of {name} is {age:02d}".format(name='watkins', age=5)) # The age of watkins is 05
format()
フォーマット文字列の呼び出しフォーマットは、"{ ! : }.format()"
です.現在サポートされている変換フラグ文字には、r(repr)、s(str)、a(ascii)が含まれます.フォーマット・ディスクリプタでよく使用される呼び出し方法は、
[[ ] ][ ][#][0][ ][,][. ][ ]
です.文字列フォーマットでの変換タイプ
を選択します.
意味
b
整数をバイナリとして表す
c
整数をUnicodeコードポイントとして解読
d
整数を10進数として処理します.これは整数のデフォルトで使用される説明子です.
e
科学的表現を用いて小数を表す(
e
で指数を表す)f
小数を定数として表す
g
定点表現法と科学表現法の間で自動的に選択されます.これは小数にデフォルトで使用される説明子ですが、デフォルトでは少なくとも1桁の小数があります.
o
整数を8進数で表す
s
文字列のフォーマットは変更されません.これはデフォルトで文字列に使用される説明子です.
x
整数を16進数で表し、小文字で表す
%
数をパーセントで表す
format()メソッドのいくつかの一般的な使い方は以下の通りです.
# ,
print("{3} {0} {2} {1} {3} {0}".format('be', 'not', 'or', 'to')) # to be or not to be
# , f —— f
from math import e
print(f"Euler's constant is roughly {e:05.2f}") # Euler's constant is roughly 02.72
# 、 , ^
print("{pi:$^8.2f}".format(pi=3.141592)) # $$3.14$$
print("{sale:,.2f}".format(sale=20190328.1227)) # 20,190,328.12
# , 。
print("{bn:#b}".format(bn=28)) # 0b11100
%オペレータではなくformat方式を使用して文字列をフォーマットする理由は、次のとおりです.
# % , (name, )
name = ("watkins", "uself")
# TypeError: not all arguments converted during string formatting
print("the names is %s" % (name))
print("the names is %s" % (name, )) # the names is ('watkins', 'uself')
(最近更新:2019年04月11日)