要结束循环,您可以使用break
statement。如果发行不可兑换价值,您还可以利用ValueError
所引发的事实:
print ("Convert MM to Inches")
convert=float(25.4)
while True:
print("*******MM*******")
MM=input()
try:
MM = float(MM)
except ValueError:
break
Results=float(MM/convert)
print("*****Inches*****")
print("%.3f" % Results)
print("%.4f" % Results)
print("%.5f" % Results)
结果:
[vyktor@grepfruit tmp]$ ./convert
Convert MM to Inches
*******MM*******
exit
[vyktor@grepfruit tmp]$
或者,如果您只想在字符串上退出exit
并在发生错误时转到下一个循环,那么好的方法是:
MM = input()
if MM == 'exit':
break
try:
MM = float(MM)
except ValueError:
print( 'I\'m sorry {} isn\'t a valid value'.format(MM))
continue # Next iteration
或者你可以让它“linuxy”你可以等到Ctrl+C
(键盘中断)被按下并优雅地处理它:
try:
# Whole program goes here
except KeyboardInterrupt:
print('Bye bye')
这将是这样的(^C
意味着发送Ctrl+C
):
[vyktor@grepfruit tmp]$ ./convert
Convert MM to Inches
*******MM*******
^CBye bye