Это зависит от того, что вы хотите, чтобы ошибка сигнализировала, но я бы использовал словарь в этом случае:
greetings = {'m': 'Mr.', 'f': 'Ms.'}
gender = readFromDB(...) # either 'm' or 'f'
greeting = greetings[gender]
Если пол не равен ни m, ни f, это вызовет ошибку KeyError, содержащую неожиданное значение:
greetings = {'m': 'Mr.', 'f': 'Ms.'}
>>> greetings['W']
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
greetings['W']
KeyError: 'W'
Если вы хотите получить более подробную информацию в сообщении, вы можете перехватить и отредактировать его:
try:
greeting = greetings[gender]
except KeyError,e:
raise ValueError('Unrecognized gender %s' % gender)