擅长:python、mysql、java
<p>首先,你们必须<strong>不要在python2中使用<code>input</code>。
如果要获取整数,请使用<code>int(raw_input())</code>,否则请使用<code>float(raw_input())</code>。<code>input</code>没有将字符串转换成它执行的数字,因此你在使用它的程序的安全性上制造了一个巨大的漏洞。你知道吗</p>
<p>另一个可以用来获取python内置数据类型作为输入的函数是<a href="http://docs.python.org/2/library/ast.html#ast.literal_eval" rel="nofollow">^{<cd5>}</a>。你知道吗</p>
<p>其次,可以使用一些循环:</p>
<pre><code>result = None
while True:
num = raw_input("Insert number: ")
try:
result = float(num) * (9.459 * 10**12)
except Exception:
print "Try again!"
else:
break
print "The result is: ", result
</code></pre>
<p>基本上,<code>try</code>,<code>except</code>语句阻止异常并让您处理它。
在本例中,您希望重复输入请求,因此应该将输入请求放入处理错误的循环中,并让<code>converser</code>函数引发异常。你知道吗</p>