Re: [问题] 终止程序

楼主: mantour (朱子)   2014-05-30 01:12:19
※ 引述《aquarius523 (minerva)》之铭言:
: 我想终止程序
: 爬文的结果多是关于while loop、for loop的情况(使用break)
: 但现在我要的是"检查前一个function的结果,并判断是否继续
: 若否 先print一段字串再终止"
: 其中没有用到loop
: 试过break,都会出问题
: 那该怎么解决呢?
: 有没有内建指令?
最简单的方式是整个用if包起来
...
...
if 符和继续的条件:
继续的code
...
...
else:
print <your message>
缺点是如果要做很多次这样的判断的话code会有点丑
...
...
if 继续条件条件一:
...
...
if 继续条件二:
...
...
if 继续条件三:
...
...
else:
print <message 3>
else:
print <message 2>
else:
print <message 1>
推文提到用return的方式的话就要把整个code包在一个main function里
例如
def main():
...
...
if not 继续条件一:
print <message1>
return
...
...
if not 继续条件二:
print <message2>
return
...
...
main()
或是用exception来处理
例如:
class Termination(Exception):
def __init__(self, message):
self.message = message
def __str__(self):
return repr(self.message)
try:
if not 继续条件一:
raise Termination(<message1>)
...
...
if not 继续条件二:
raise Termination(<message2>)
...
...
if not 继续条件三:
raise Termination(<message3>)
...
...
...
except Termination as message:
print message

Links booklink

Contact Us: admin [ a t ] ucptt.com