最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python中退出多層循環(huán)的方法

 更新時(shí)間:2018年11月27日 11:27:37   作者:你說(shuō)的都好  
這篇文章主要介紹了python中退出多層循環(huán)的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

1、定義標(biāo)記變量;利用變量值的變化退出循環(huán)

# 第一種嵌套形式
a = [[1, 2, 3], [5, 5, 6], [7, 8, 9]]
# init_i = 0
# init_j = 0
flag = True
for i in range(3):
  for j in range(3):
    # print(i, j)
    if a[i][j] == 5:
      flag = False
      init_i = i
      init_j = j
      break
  if not flag:
    break
print(init_i, init_j)
print(i, j)

# 第二種嵌套形式
flag = True
while flag:
  for i in range(10):
    print(x)
    flag = False
    break

 2、使用函數(shù)配合return關(guān)鍵字 實(shí)現(xiàn)跳出循環(huán)(在函數(shù)內(nèi)部只要執(zhí)行完return語(yǔ)句 則直接退出函數(shù))

def test():
  while True:
    for x in range(10):
      print(x)
      return
test()

 3、利用else continue 和外層的break跳出循環(huán)

a = [[1, 2, 3], [5, 5, 6], [7, 8, 9]]
init_i = 0
init_j = 0
flag = True
for i in range(3):
  for j in range(3):
    # print(i, j)
    if a[i][j] == 5:
      flag = False
      init_i = i
      init_j = j
      break
  else:
    continue
  break
  # if not flag:
  #   break
print(init_i, init_j)
print(i, j)

while True:
  for x in range(4):
    print(x)
    if x == 2:
      break
  else:
    print("未執(zhí)行")
    continue
  break

python跳出多層循環(huán)的方法

今天同事問(wèn)我一個(gè)python面試題,關(guān)于python跳出多層循環(huán),原來(lái)還真沒(méi)用過(guò),網(wǎng)上一查還真有點(diǎn)意思,下面記錄一下:

Python 本身沒(méi)有“break n” 和“goto” 的語(yǔ)法,這也造成了Python 難以跳出多層(特定層數(shù))循環(huán)。下面是幾個(gè)跳出多層(特定層數(shù))循環(huán)的tip。

1、自定義異常

class getoutofloop(Exception): pass
try:
  for i in range(5):
    for j in range(5):
      for k in range(5):
        if i == j == k == 3:
          raise getoutofloop()
        else:
          print i, '----', j, '----', k
except getoutofloop:
  pass

2、封裝為函數(shù)return

def test():
  for i in range(5):
    for j in range(5):
      for k in range(5):
        if i == j == k == 3:
          return
        else:
          print i, '----', j, '----', k
test()

3、for ... else ... 用法

上面的兩種都是只能跳出多層而不能跳出特定層數(shù)的循環(huán),接下來(lái)的這個(gè)正是為了跳出特定層數(shù)的循環(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: continue
    break
  else: continue
  break

else在 while和for 正常循環(huán)完成之后執(zhí)行,和直接寫在 while和for 之后沒(méi)有區(qū)別,但是如果用break結(jié)束循環(huán)之后else就不會(huì)執(zhí)行了。這也是個(gè)很新奇的做法。

才知道原來(lái)可以作為跳出多層循環(huán)用。不過(guò)要是有多次跳出不同層的循環(huán)的需求,也沒(méi)轍了。

總結(jié)

以上所述是小編給大家介紹的python中退出多層循環(huán)的方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!

相關(guān)文章

  • tensorflow之讀取jpg圖像長(zhǎng)和寬實(shí)例

    tensorflow之讀取jpg圖像長(zhǎng)和寬實(shí)例

    這篇文章主要介紹了tensorflow之讀取jpg圖像長(zhǎng)和寬實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • Python Django切換MySQL數(shù)據(jù)庫(kù)實(shí)例詳解

    Python Django切換MySQL數(shù)據(jù)庫(kù)實(shí)例詳解

    這篇文章主要介紹了Python Django切換MySQL數(shù)據(jù)庫(kù)實(shí)例詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • Pycharm配置opencv與numpy的實(shí)現(xiàn)

    Pycharm配置opencv與numpy的實(shí)現(xiàn)

    本文總結(jié)了兩種方法來(lái)導(dǎo)入opencv與numpy包,第一種是直接在Pycharm中導(dǎo)入兩個(gè)包,第二種是在官網(wǎng)下載相關(guān)文件進(jìn)行配置,感興趣的小伙伴們可以參考一下
    2021-07-07
  • Win11平臺(tái)安裝和配置NeoVim0.8.2編輯器搭建Python3開發(fā)環(huán)境詳細(xì)過(guò)程(2023最新攻略)

    Win11平臺(tái)安裝和配置NeoVim0.8.2編輯器搭建Python3開發(fā)環(huán)境詳細(xì)過(guò)程(2023最新攻略)

    這篇文章主要介紹了Win11平臺(tái)安裝和配置NeoVim0.8.2編輯器搭建Python3開發(fā)環(huán)境(2023最新攻略),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-01-01
  • Python3中urllib庫(kù)添加請(qǐng)求頭的兩種方式

    Python3中urllib庫(kù)添加請(qǐng)求頭的兩種方式

    Python?3中的urllib模塊可以用來(lái)處理URL,包括下載和上傳文件、創(chuàng)建和讀取cookie、訪問(wèn)Web?API等,本文給大家介紹Python3中urllib庫(kù)添加請(qǐng)求頭的兩種方式,感興趣的朋友一起看看吧
    2023-10-10
  • 基于Python實(shí)現(xiàn)將列表數(shù)據(jù)生成折線圖

    基于Python實(shí)現(xiàn)將列表數(shù)據(jù)生成折線圖

    這篇文章主要介紹了如何利用Python中的pandas庫(kù)和matplotlib庫(kù),實(shí)現(xiàn)將列表數(shù)據(jù)生成折線圖,文中的示例代碼簡(jiǎn)潔易懂,需要的可以參考一下
    2022-03-03
  • Python字符串逆序輸出的實(shí)例講解

    Python字符串逆序輸出的實(shí)例講解

    今天小編就為大家分享一篇關(guān)于Python字符串逆序輸出的實(shí)例講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-02-02
  • Python定時(shí)查詢starrocks數(shù)據(jù)庫(kù)并將結(jié)果保存在excel

    Python定時(shí)查詢starrocks數(shù)據(jù)庫(kù)并將結(jié)果保存在excel

    這篇文章主要為大家詳細(xì)介紹了Python如何實(shí)現(xiàn)定時(shí)查詢starrocks數(shù)據(jù)庫(kù)并將結(jié)果保存在excel,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以參考一下
    2025-03-03
  • Python 中 f-Strings 的作用

    Python 中 f-Strings 的作用

    這篇文章主要介紹了Python 中 f-Strings 的作用, f-strings 是用來(lái)非常方便的格式化輸出的,覺(jué)得它的使用方法無(wú)外乎就是 print(f'value = { value }',其實(shí),f-strings 遠(yuǎn)超你的預(yù)期,今天來(lái)梳理一下它還能做那些很酷的事情
    2021-10-10
  • 詳解Python中高階函數(shù)(map,filter,reduce,sorted)的使用

    詳解Python中高階函數(shù)(map,filter,reduce,sorted)的使用

    高階函數(shù)就是能夠把函數(shù)當(dāng)成參數(shù)傳遞的函數(shù)就是高階函數(shù),換句話說(shuō)如果一個(gè)函數(shù)的參數(shù)是函數(shù),那么這個(gè)函數(shù)就是一個(gè)高階函數(shù)。本文為大家詳細(xì)講解了Python中常用的四個(gè)高階函數(shù),感興趣的可以了解一下
    2022-04-04

最新評(píng)論

高州市| 永兴县| 鄱阳县| 广宁县| 涿州市| 鸡泽县| 蕲春县| 墨江| 福州市| 开鲁县| 许昌县| 四子王旗| 行唐县| 南雄市| 铜鼓县| 苏尼特左旗| 临高县| 肇源县| 广丰县| 平乐县| 常州市| 砚山县| 贵溪市| 辽阳市| 赤壁市| 泽州县| 林西县| 都昌县| 来宾市| 芦山县| 彝良县| 张家口市| 察哈| 新蔡县| 漯河市| 安丘市| 辉县市| 高陵县| 禄劝| 吕梁市| 仙居县|