I'm trying to run the following code:
while check == False:
op = input('Do you want to add, subtract, multiply or divide?')
if op != ((('add' or 'subtract') or 'multiply') or 'divide'):
print('Please enter a valid operation')
else:
check = True
However, only 'add' is seen as a valid input. Is there a way to execute this code without using nested if statements so that all 4 options are valid?
You can do it using the not in
operator:
if op not in ['add', 'substract', 'multiply', 'divide']:
print('Please enter a valid operation')
in
checks for an item in a container, not in
just does the opposite.
Or additionally, as @Chris_Rands suggests, replace the list by a set for efficiency:
if op not in {'add', 'substract', 'multiply', 'divide'}:
print('Please enter a valid operation')