<p>我正在写一个基本的计算器,它可以处理两个不同的数字。
到目前为止,我成功地编写了一个工作原型,但是在划分和防止它的时候,我遇到了许多问题,所以我将它们发布出来
分开。你知道吗</p>
<hr/>
<p>如果用户没有提供合格的操作员,我希望程序重复这个问题。这就是我现在的代码:</p>
<pre><code>def optn_query():
print("Hulk can different things with number!")
print("YOU!")
optn = input("What Hulk do with number?! ")
return optn
</code></pre>
<p><strong>是否使用if语句来确定输入是否正确?</strong></p>
<hr/>
<p>我还将return optn放入其中,这样下一个函数(优雅地称为hulk\u math)不会中途失败,但它仍然会失败:</p>
<pre><code>Traceback (most recent call last):
File "hulc.py", line 57, in <module>
main()
File "hulc.py", line 13, in main
hulk_math()
File "hulc.py", line 41, in hulk_math
if optn == "+":
NameError: name 'optn' is not defined
</code></pre>
<p>我该怎么做才能解决这个问题?你知道吗</p>
<p>以下是绿巨人数学()本身:</p>
<pre><code>def hulk_math():
if optn == "+":
result = num1 + num2
print("Hulk ADDS!!! Hulk thinks it's {0}!".format(result))
elif optn == "-":
result = num1 - num2
print("Hulk SUBTRACTS!!! Hulk thinks it's {0}!".format(result))
elif optn == "*":
result = num1 * num2
print("Hulk MULTIPLIES!!! Hulk thinks it's {0}!".format(result))
elif optn == "/":
result = num1 / num2
print("Hulk DIVIDES!!! Hulk thinks it's {0}!".format(result))
main()
</code></pre>