在刷剑指offer的时候,发现很多高效的代码在主程序入口处会使用while true try except 的改写方式。这种改写方式会使程序更加高效,鲁棒性更强。
def func(): pass while True: try: func() # do something such as print or something else except: # do something such as break
while true 会使try语句一直运行,直到except出现break。解读貌似是这样子。没有仔细深究,就暂时Mark一下,权当记录。
————————————————————————————————————————————————————
实例:(快被这个搞死了)
import sys while True: try: arr = [] n = int(raw_input()) for i in range(n): num = int(raw_input()) arr.append(num) res = sorted(list(set(arr))) for i in res: print i except: break
import sys while True: try: data=[] new_data=[] n=int(sys.stdin.readline()[:-1]) for i in range(n): a=int(sys.stdin.readline()[:-1]) data.append(a) new_data=list(set(data)) new_data.sort() for j in new_data: print j except: break