web-dev-qa-db-ja.com

ブール値はPythonの文字列でどのようにフォーマットされますか?

私はできないことがわかります:

"%b %b" % (True, False)

pythonで。 b(oolean)の%bを推測しました。このようなものはありますか?

150
Juanjo Conti
>>> print "%r, %r" % (True, False)
True, False

これはブール値に固有ではありません-%rは引数で__repr__メソッドを呼び出します。 %sstrの場合)も動作するはずです。

222
danben

True Falseを使用する場合:

"%s %s" % (True, False)

str(True)'True'であり、str(False)'False'であるためです。

または1 0を使用する場合:

"%i %i" % (True, False)

int(True)1であり、int(False)0であるためです。

60
Desintegr

文字列の Formatter class を使用することもできます

print "{0} {1}".format(True, False);
print "{0:} {1:}".format(True, False);
print "{0:d} {1:d}".format(True, False);
print "{0:f} {1:f}".format(True, False);
print "{0:e} {1:e}".format(True, False);

これらは結果です

True False
True False
1 0
1.000000 0.000000
1.000000e+00 0.000000e+00

一部の%形式のタイプ指定子(%r%i)は使用できません。詳細については、 Format Specification Mini-Language を参照してください

16
Wolf