Ответ 1
В Python 2.5 вы можете использовать тернарные условные обозначения:
a if b else c
Здесь больше обсуждений: У Python есть тернарный условный оператор?
Возможный дубликат:
Терминальный оператор Python
Я хочу напечатать строку в python. Я не хочу делать:
if isfemale_bit:
print 'F'
else:
print 'M'
Самое лучшее, что у меня есть сейчас: print ['M', 'F'][int(isfemale_bit)]
?
Есть ли лучшая альтернатива?
Мне нужен мой синтаксический сахар!
В Python 2.5 вы можете использовать тернарные условные обозначения:
a if b else c
Здесь больше обсуждений: У Python есть тернарный условный оператор?
Ah тернарный оператор:
>>> print 'foo' if True else 'bar'
foo
>>> print 'foo' if False else 'bar'
bar
print 'F' if isfemale_bit else 'M'
Я думаю, вы ищете решение, подобное o isfemale_bit?'F':'M'
в коде C
Таким образом, вы можете использовать конструкцию and-or
(см. Dive Into Python)
print isfemale_bit and 'F' or 'M'