Если ваша функция всегда возвращает bool
, а затем просто распечатать его, как это:
print(f())
Если вам нужно преобразовать его в строку без печати, используйте str(f())
или repr(f())
. Для типа bool
эти два эквивалента, но, например, если их аргумент равен str
, они разные: repr(str_obj)
возвращает его правильно процитированным и экранированным.
Если это не всегда bool
, но вы хотите напечатать что-то в зависимости от его значения истинности, то используйте if
, как в вашем вопросе, так и в ответе iCodez. Кроме того, вы можете преобразовать его в логическое значение, а затем распечатать его:
print(bool(f()))
Я согласен с @LorenzoDonati. Это не написано как фактический ответ, а как ваше мнение. Вы должны сказать что-то вроде «Python booleans» реализует '__repr__' и' __str__' для печати своего значения истинности, так что 'print (f())' фактически эквивалентен фрагменту, который вы опубликовали, но более кратким. Python поощряет этот сжатый стиль , поэтому первая форма абсолютно в порядке ». –
Спасибо за отзыв о моем ответе, я расширил его, чтобы быть более информативным. – pts