Python跳出多重循環(huán)的方法示例
方法1:自定義異常
# -*- coding:utf-8 -*-
"""
功能:python跳出循環(huán)
"""
# 方法1:自定義異常
class Getoutofloop(Exception):
pass
try:
for i in range(5):
for j in range(5):
if i == j == 2:
raise Getoutofloop()
else:
print i, '----', j
except Getoutofloop:
pass
方法2:將循環(huán)封裝為函數(shù),return
# -*- coding:utf-8 -*-
"""
功能:python跳出循環(huán)
"""
# 方法2:封裝為函數(shù),return
def test():
for i in range(5):
for j in range(5):
if i == j == 2:
return
else:
print i, '----', j
test()
方法3:用for...else...語句
# -*- coding:utf-8 -*-
"""
功能:python跳出循環(huán)
"""
# 方法2:for...else...用法,用于跳出指定循環(huán)層
for i in range(5):
for j in range(5):
for k in range(5):
if i == j == k == 3:
break
else:
print i, '----', j, '----', k
else: # else1
continue
break # break1
else: # else2
continue
break # break2
方法3解釋:
(1)break能跳出某一重循環(huán)(該重循環(huán)的本次及剩余次數(shù)都不再執(zhí)行),但并不能跳出該重循環(huán)的其他外重循環(huán)。
例如,最內(nèi)第3重循環(huán)break之后,程序返回第2重循環(huán)繼續(xù)執(zhí)行第2重的下一次,然后第3重循環(huán)將再次執(zhí)行。
(2)continue是跳過某一重循環(huán)的某一次,但該重循環(huán)的剩余次數(shù)會繼續(xù)執(zhí)行。
(3)for...else:其中else塊中的語句將在for循環(huán)完整執(zhí)行過之后才會被執(zhí)行,如果for循環(huán)被break,則else塊將不會被執(zhí)行。
(4)方法3中,當(dāng)?shù)?重循環(huán)滿足i == j == k ==3時,第3重循環(huán)被break,則并列的else1將跳過,執(zhí)行break1,導(dǎo)致第2重循環(huán)
被終止,則else2被跳過,執(zhí)行break2,導(dǎo)致第1重循環(huán)被終止。
最終實現(xiàn)跳出整個循環(huán)。
for...else加break舉例:
# -*- coding:utf-8 -*-
"""
功能:for...else語句
"""
for i in range(5):
print i
else:
print u"循環(huán)完整執(zhí)行一次。"
for j in range(6):
for k in range(6):
print j, k
if j == 3:
print u"內(nèi)重循環(huán)即將被break"
break
else:
print u"內(nèi)重循環(huán)完整執(zhí)行一次。"
else:
print u"外重循環(huán)完整執(zhí)行一次。"
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python數(shù)據(jù)類型之List列表實例詳解
這篇文章主要介紹了Python數(shù)據(jù)類型之List列表,結(jié)合實例形式分析了PythonList列表的概念、功能、定義以及判斷、截取、遍歷、切片等常見操作技巧,需要的朋友可以參考下2019-05-05
Python中的jquery PyQuery庫使用小結(jié)
這篇文章主要介紹了Python中的jquery PyQuery庫使用小結(jié),需要的朋友可以參考下2014-05-05
Python 利用Entrez庫篩選下載PubMed文獻摘要的示例
這篇文章主要介紹了Python 利用Entrez庫篩選下載PubMed文獻摘要的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-11-11
Python數(shù)據(jù)分析Pandas?Dataframe排序操作
這篇文章主要介紹了Python數(shù)據(jù)分析Pandas?Dataframe排序操作,數(shù)據(jù)的排序是比較常用的操作,DataFrame?的排序分為兩種,一種是對索引進行排序,另一種是對值進行排序,接下來就分別都介紹一下,需要的小伙伴可以參考一下2022-05-05
Python實現(xiàn)自動收集參數(shù)的技巧分享
在Python中,充分利用函數(shù)參數(shù)的自動收集和靈活處理,是寫出高效且易維護代碼的關(guān)鍵之一,本文將深入研究Python函數(shù)參數(shù)的收集方式,感興趣的小伙伴可以了解下2023-12-12
Python socket實現(xiàn)的簡單通信功能示例
這篇文章主要介紹了Python socket實現(xiàn)的簡單通信功能,結(jié)合實例形式分析了Python socket通信的相關(guān)概念、原理、客戶端與服務(wù)器端實現(xiàn)技巧以及socketserver模塊多并發(fā)簡單實現(xiàn)方法,需要的朋友可以參考下2018-08-08

