Python教程:跳出多层循环for、while

枫铃3年前 (2021-08-07)Python237

for跳出多层循环

break_flag = False
for i in range(10):
    print("爷爷层",i)
    for j in range(10):
        print("=爸爸层",j)
        if j == 3:
            break_flag = True
            break
        for k in range(10):
            print("===>孙子层",k )
            if k == 2:
                break_flag = True
                break
        if break_flag:
            break
    if break_flag: #if break_falg == True:
        print("我儿子死了,我也不活了..")
        break
print("keep going....")

while跳出多层循环

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
break_flag = False
count = 0
while break_flag == False  :
    print("爷爷层。。。")
    while  break_flag == False:
        print("爸爸层...")
        while  break_flag == False:
            count +=1
            if count >10:
                break_flag = True
            print("炎龙层...")
print("keep going....")

跳出多级菜单

map={
    "华南":{
        "广东":["广州市","佛山市","深圳市","东莞市"],
        "广西":["南宁市","柳州市","桂林市","北海市"],
        "海南":["海口市","三亚市","三沙市","儋州市"]
             },
    "华东":{
        "上海":["黄浦区","卢湾区","徐汇区","长宁区"],
        "安徽":["合肥市","芜湖市","淮南市","马鞍山市"],
        "江苏":["南京市","无锡市","徐州市","常州市"]
            }
}
flag = False
while flag == False:
    print("中国有如下地区:")
    for i in map.keys():
        print(i)
    area = input("请选择一个地区、b或者q:").strip()
    if area == "b":
        break
    if area == "q":
        flag = True
    if len(area) == 0:
        continue
    if area in map.keys():
        while flag == False:
            print("该地区有如下省:")
            for j in (map[area]).keys():
                print(j)
            province = input("请选择一个省、b或者q:").strip()
            if province == "b":
                break
            if province == "q":
                flag = True
            if len(province) == 0:
                continue
            if province in  (map[area]).keys():
                while flag == False:
                    print("该省有如下城市:")
                    for j in map[area][province]:
                        print(j)
                    city = input("请选择b或者q:")
                    if city == "b":
                        break
                    if city == "q":
                        flag = True
                    if len(city) == 0:
                        continue

跳出多层循环简化版

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
menu = {
    '北京':{
        '海淀':{
            '五道口':{
                'soho':{},
                '网易':{},
                'google':{}
            },
            '中关村':{
                '爱奇艺':{},
                '汽车之家':{},
                'youku':{},
            },
            '上地':{
                '百度':{},
            },
        },
        '昌平':{
            '沙河':{
                '老男孩':{},
                '北航':{},
            },
            '天通苑':{},
            '回龙观':{},
        },
        '朝阳':{},
        '东城':{},
    },
    '上海':{
        '闵行':{
            "人民广场":{
                '炸鸡店':{}
            }
        },
        '闸北':{
            '火车战':{
                '携程':{}
            }
        },
        '浦东':{},
    },
    '山东':{},
}
last_layers =  [  menu  ]  #上一层
current_layer = menu  #当前层
while True:
    for key in current_layer:
        print(key)
    choice = input(">>:").strip()
    if len(choice)==0:continue
    if choice in current_layer: #进入下一层
        last_layers.append(current_layer) #当前层添加到列表
        current_layer = current_layer[choice] #北京
    if choice == "b":
        if last_layers:
            current_layer = last_layers[-1] #取到上一层,赋值给current_layer
            last_layers.pop()
    if choice == 'q':
        break

相关文章

利用python同步windows和linux文件

写python脚本的初衷,每次在windows编辑完文件后,想同步到linux上去,只能够登录服务器,...

爬虫基本原理

爬虫基本原理 一、爬虫是什么? 百度百科和维基百科对网络爬虫的定义:简单来说爬虫就是抓取目标网站内容的工具,一般是根据定义的行...

Django 函数和方法的区别

函数和方法的区别 1、函数要手动传self,方法不用传 2、如果是一个函数,用类名去调用,如果是一个方法...

Django 知识补漏单例模式

单例模式:(说白了就是)创建一个类的实例。在 Python 中,我们可以用多种方法来实现单例模式&#x...

Django基础知识MTV

Django简介 Django是使用Python编写的一个开源Web框架。可以用它来快速搭建一个高性能的网站。 Django也是一个MVC框架。但是在Dj...

Python mysql 索引原理与慢查询优化

一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。