I want to be able to do something like this, where inputs of 1, "D" or "dog" will all call do_something(), whereas any other input will call do_something_else().
command = input("Type a command")
if command == (1 or "D" or "dog"):
do_something()
else:
do_something_else()
Currently, this does not work, because Python is evaluating the truthiness of (1 or "D" or "dog"), which is always True, of course. Then, since command is also a true string, do_something will always be called.
I know how to do this one way: if command == 1 or command = "D" or command = "dog". This works fine; however, it involves a lot of repetition, and I'm sure there must be some way to shorten that.
I suppose I could also make a list of valid commands, valid_commands = [1,"D","dog"] and check if command in valid_commands, but that seems like a workaround, rather than the ideal approach.