在 Python 中模擬 Do-While 迴圈
在 Python 中,本機不支援 do-while 迴圈。但是,有多種方法可以實現類似的功能。
一種方法是使用while True 循環,如下所示:
while True: # Execute loop body if break_condition: break
或者,您可以使用while 循環在檢查中斷條件之前透過if 語句執行循環體:
# Execute loop body if not break_condition: continue
處理StopIteration異常
要正確處理迭代列表或可迭代時引發的StopIteration 異常,請使用try- except 區塊:
iterator = list_of_ints.__iter__() element = None while True: try: element = iterator.next() except StopIteration: break print(element)
模擬狀態機
在提供的範例中,狀態機是使用do-while 循環實現的。要在 Python 中模擬這一點,您可以使用帶有條件中斷語句的循環:while True: if state == STATE_CODE: if "//" in s: tokens.add(TOKEN_COMMENT, s.split( "//" )[1]) state = STATE_COMMENT else: tokens.add(TOKEN_CODE, s) if state == STATE_COMMENT: if "//" in s: tokens.append(TOKEN_COMMENT, s.split( "//" )[1]) state = STATE_CODE else: # Re-evaluate same line continue try: s = i.next() except StopIteration: break
以上是如何在 Python 中模擬 Do-While 循環並處理迭代器?的詳細內容。更多資訊請關注PHP中文網其他相關文章!