服務(wù)熱線
153 8323 9821
這是《Python開發(fā)技術(shù)詳解》中的一節(jié),其道理和c#應(yīng)該是一樣的
break和continue語句
break和continue語句用于控制語句的跳轉(zhuǎn),下面分別介紹break和continue語句的使用方法。
1.break語句
break語句可以使程序跳出switch語句,也可以結(jié)束循環(huán)語句,分別說明如下。
(1)break語句可以使程序跳出switch語句。例如,3.2.4節(jié)【例3-7】模擬switch分支結(jié)構(gòu)中使用了break語句:
- operator = "+"
- x = 1
- y = 2
- for case in switch(operator):# switch只能用于for in循環(huán)中
- if case("+"):
- print x + y
- break
- if case("-"):
- print x - y
- break
- if case("*"):
- print x * y
- break
- if case("/"):
- print x / y
- break
- if case():# 默認(rèn)分支
- print ""
第7行代碼中使用了break。當(dāng)變量operator的值為“+”,則執(zhí)行表達(dá)式x + y。然后中斷switch分支結(jié)構(gòu),后面的case分支都不會(huì)執(zhí)行。此時(shí)輸出結(jié)果為3。后面的break作用相同。當(dāng)匹配到某個(gè)case后,程序?qū)⑻鰏witch。
如果第一個(gè)case不使用break子句,程序?qū)⑤敵鰞蓚€(gè)值,分別是3和-1。因?yàn)檩敵霰磉_(dá)式x + y后,分支結(jié)構(gòu)并沒有中斷,程序?qū)⒘鬓D(zhuǎn)到下面一個(gè)case。然后繼續(xù)計(jì)算表達(dá)式x- y的值,遇到后面的break語句才退出分支結(jié)構(gòu)。
(2)在循環(huán)結(jié)構(gòu)中,break語句可以提前結(jié)束循環(huán)。
【例3-11】在0~99的數(shù)中查找用戶輸入的值。
- x = input("輸入x的值:")
- y = 0
- for y in range(0, 100):
- if x == y:
- print "找到數(shù)字:", x
- break
- else:
- print "沒有找到"
第1行代碼捕獲用戶輸入的值,并把該值賦值給變量x。
第2行代碼定義一個(gè)變量y,變量y用于暫存需要遍歷的列表的值。
第3行代碼使用for...in...循環(huán)遍歷range(0, 100)返回的列表。range(0, 100)的返回值為\[0、1、2...99\]。
第4行代碼判斷輸入的值是否等于列表中的值。如果條件成立,輸出查找到的數(shù)字,并立即退出循環(huán)。循環(huán)結(jié)束,后面的else子句將不會(huì)被執(zhí)行。
第7行代碼,當(dāng)沒有找到輸入的值時(shí),else子句的代碼將被執(zhí)行。
注意break語句不能運(yùn)行在循環(huán)體或分支語句之外,否則,Python解釋器將提示如下錯(cuò)誤:
- SyntaxError: "break"outside loop"
2.continue語句
continue語句用于循環(huán)中的控制,當(dāng)程序執(zhí)行到continue語句時(shí),程序?qū)⑥D(zhuǎn)到下一次循環(huán)。break語句會(huì)直接中斷循環(huán),而continue語句則是停止本次循環(huán),進(jìn)入下一次循環(huán),循環(huán)語句并沒有中止。
【例3-12】演示continue語句的使用方法。
- x = input("輸入x的值:")
- y = 0
- for y in range(0, 100):
- if x <> y:
- print "y = ", y
- continue
- else:
上一篇:SQL語句大全
下一篇:Sql server 日期截取