# at the top:
import operator
# the rest of your application
operator = input ( "Enter your oeprator out of: ..." )
if operator not in ( "+" , ...) :
raise ValueError ( f"Invalid Operator: {operator}" )
def mydivision( num1: float , num2: float ) -> float :
if num2 == 0 :
raise ValueError ( "Division by zero not allowed" )
return num1 / num2
OPERATOR_MAP = {
"+" : operator .add ,
"*" : operator .mul ,
"-" : operator .sub ,
"/" : mydivision, # because of null handling
}
MESSAGE_MAP = {
"+" : "The sum of two numbers is: " ,
"*" : "The multiplication of two numbers is: " ,
"-" : "The subtraction of two numbers is: " ,
"/" : "The division of two numbers is: " ,
}
result = OPERATOR_MAP[ operator ] ( num1, num2)
print ( MESSAGE_MAP[ operator ] , result)
IyBhdCB0aGUgdG9wOgppbXBvcnQgb3BlcmF0b3IKCiMgdGhlIHJlc3Qgb2YgeW91ciBhcHBsaWNhdGlvbgoKb3BlcmF0b3IgPSBpbnB1dCgiRW50ZXIgeW91ciBvZXByYXRvciBvdXQgb2Y6IC4uLiIpCmlmIG9wZXJhdG9yIG5vdCBpbiAoIisiLCAuLi4pOgogICAgcmFpc2UgVmFsdWVFcnJvcihmIkludmFsaWQgT3BlcmF0b3I6IHtvcGVyYXRvcn0iKQoKZGVmIG15ZGl2aXNpb24obnVtMTogZmxvYXQsIG51bTI6IGZsb2F0KSAtPiBmbG9hdDoKICAgIGlmIG51bTIgPT0gMDoKICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJEaXZpc2lvbiBieSB6ZXJvIG5vdCBhbGxvd2VkIikKICAgIHJldHVybiBudW0xIC8gbnVtMgoKT1BFUkFUT1JfTUFQID0gewogICAgIisiOiBvcGVyYXRvci5hZGQsCiAgICAiKiI6IG9wZXJhdG9yLm11bCwKICAgICItIjogb3BlcmF0b3Iuc3ViLAogICAgIi8iOiBteWRpdmlzaW9uLCAgIyBiZWNhdXNlIG9mIG51bGwgaGFuZGxpbmcKfQoKTUVTU0FHRV9NQVAgPSB7CiAgICAiKyI6ICJUaGUgc3VtIG9mIHR3byBudW1iZXJzIGlzOiAiLAogICAgIioiOiAiVGhlIG11bHRpcGxpY2F0aW9uIG9mIHR3byBudW1iZXJzIGlzOiAiLAogICAgIi0iOiAiVGhlIHN1YnRyYWN0aW9uIG9mIHR3byBudW1iZXJzIGlzOiAiLAogICAgIi8iOiAiVGhlIGRpdmlzaW9uIG9mIHR3byBudW1iZXJzIGlzOiAiLAp9CgpyZXN1bHQgPSBPUEVSQVRPUl9NQVBbb3BlcmF0b3JdKG51bTEsIG51bTIpCnByaW50KE1FU1NBR0VfTUFQW29wZXJhdG9yXSwgcmVzdWx0KQ==
compilation info
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/lib/python2.7/py_compile.py", line 117, in compile
raise py_exc
py_compile.PyCompileError: File "prog.py", line 7
if operator not in ("+", ...):
^
SyntaxError: invalid syntax
stdout