擅长:python、mysql、java
<p>操作函数中的<code>result</code>变量与<code>cal</code>函数的作用域不同。让这些函数返回一个值,然后从<code>cal</code>返回该值,您将获得所需的行为</p>
<pre class="lang-py prettyprint-override"><code>def cal(num1,op,num2):
def add():
return num1+num2
def multiply():
return num1 * num2
def devide():
if not num2==0:
result = num1 / num2
else:
result = 'num2 can\'t be zero'
return result
def default():
print("Incorrect option")
switch = {
'+':add,
'*':multiply,
'/':devide
}
return switch.get(op,default)()
</code></pre>