I need to do something similar to the CASE WHEN .. OR .. THEN from SQL in python for STRINGS. For example, if I say "DOG" or "CAT".. my translation is "ANIMAL".
I don't want to use IF ELIF ELIF..
The only solution that i can see is:
l = ['cat','dog', 'turttle']
d = {'animal': ['cat','dog', 'turttle']}
word = 'cat'
if word in l:
for i, j in d.iteritems():
if word in j:
print i
else:
print word
animal
It works but it seems very ugly..
Any other solution?
THANKS!
For your purpose I would suggest that you go with a dict indexed by the name of the animal instead. The list l
in your code would then also be redundant because it's simply the keys of this dict.
d = {
'cat': 'animal',
'dog': 'animal',
'turtle': 'animal'
}
word = 'cat'
print(d.get(word, word))