Я вижу, что не могу сделать:
"%b %b" % (True, False)
в Python. Я угадал %b для b (oolean). Есть ли что-то подобное?
%b
>>> print "%r, %r" % (True, False) True, False
Это не относится к логическим значениям - %r вызывает метод __repr__ для аргумента. %s (для str) также должно работать.
%r
__repr__
%s
str
Если хотите True False используйте:
True False
"%s %s" % (True, False)
потому что str(True) равно 'True', а str(False) равно 'False'.
str(True)
'True'
str(False)
'False'
или, если хотите, 1 0 используйте:
1 0
"%i %i" % (True, False)
потому что int(True) это 1 и int(False) это 0.
int(True)
1
int(False)
0
Вы также можете использовать класс Formatter строки
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) недоступны. Подробнее см. Спецификация формата на мини-языке
%
%i