看板 Python 關於我們 聯絡資訊
應該可以用例外處理的方式來做 首先定義一個 exception class MyException(Exception): def __init__(self, value): self.value = value 在原本程式每一個輸入的地方加上判斷式 if 輸入 == <特定數值1>: raise MyException("restart") 然後把整個程式用 while包起來 例如把你本來的程式整個寫成一個 main 函式 就可以寫成 while 1: try: main() except MyException as e: if e.value == "restart": continue 這樣輸入遇到特定數值時程式就會從頭開始執行 或是當main函式執行完畢也會從頭再執行一次 如果希望執行到main的結尾時程式就停止的話就在main後面加一個break while 1: try: main() break except MyException as e: if e.value == "restart": continue 如果希望執行到一半可以輸入另一個特定數值讓程式終止的話 就在每個輸入的地方再加上一個判斷 if <輸入> == <特定數值2>: raise MyException("exit") 然後主程式變成 while 1: try: main() break except MyException as e: if e.value == "restart": continue elif e.value == "exit": break 就可以了 ※ 引述《rc001968 (rc)》之銘言: : 各位前輩大家好, : 我的問題如下: : 我寫了一個程式,假設是A走到B,B輸入某數值後再分成C或D : C可能又因為某種輸入再分出其他不同狀況,以此類推 : 問題來了 : 但是我想要在任何時候(B中或C...)輸入某個特定數值, : 就可以回到程式的起頭A,再執行第二次程式, : (而不是每次都需重新開啟一次程式) : 同樣的在執行第二次程式的時候,進入以下各種情況中, : 我再輸入特定數值,就可以再重新回到程式開頭。 : 謝謝各位了,感恩!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.125.33
rc001968:我回去試了一下,開始有點頭緒了,謝謝你了!!!! 04/20 00:45