У меня есть оператор if-elif-elif-else, в котором 99% времени выполняется оператор else:
if something == 'this':
doThis()
elif something == 'that':
doThat()
elif something == 'there':
doThere()
else:
doThisMostOfTheTime()
Эта конструкция выполняется много, но поскольку она проходит каждое условие до того, как оно попадает в другое, у меня возникает ощущение, что это не очень эффективно, не говоря уже о Pythonic. С другой стороны, ему нужно знать, выполнено ли какое-либо из этих условий, поэтому он должен все равно протестировать.
Кто-нибудь знает, если и как это можно сделать более эффективно или это просто лучший способ сделать это?