#ReadMe标签:python,list,choice,flag,用法,print,列表,输入 From: https://www.cnblogs.com/cyg02/p/17010044.html
#本工具是根据用户选择的条目来打印该列表下的内容
#例如选择“北京”就会打印北京下面的“海淀”“昌平”“朝阳”,选择“海淀”然后会打印海淀下面的“清华大学”和“北京大学”等依次类推
list = {'北京':{ #定义一个四级列表
"海淀":{
"清华大学":['清华园','荷塘月色'],
"北京大学":['未名湖','博雅塔']},
"昌平":{...},"朝阳":{},
},
'山东':{
"德州": {},
"青岛":{},
"烟台":{},
},
'河南':{
"洛阳":{},
"南阳":{},
"信阳":{}
}
}
flag = False #定义一个标识为假的变量
while not flag : #while循环,默认为真
for i in list: #对列表进行循环。并打印列表
print(i) #
choice = input(">>>>>>请输入选项:") #根据打印的一级列表,选择其中的一个
if choice in list: #判断选择的是否存在一级列表中
while not flag: #如果存在就用for循环打印机出该条目下的二级列表
for i2 in list[choice]:
print("\t",i2)
choice1 = input(">>>>>>请输入选项:") #根据二级列表,选择要进入的列表名称
if choice1 in list[choice]: #判断输入的列表名称是否在二级列表中
while not flag:
for i3 in list[choice][choice1]: #如果存在就打印该条目下的三级列表
print("\t", i3)
choice2 = input(">>>>>>请输入选项:") #根据打印出的三级列表,选择要进入的条目名称
if choice2 in list[choice][choice1]: #判断输入的列表名称是否存在三级列表中
while not flag:
for i4 in list[choice][choice1][choice2]:#如果存在就打印出当下的列表(四级列表)
print("\t", i4)
exit()
elif choice2 == "b": #如果输入的是字母b就结束程序
flag = True #将循环中的字段置位为not true,结束while循环
else:
print("输入有误请重新输入,或者输入b退出")
elif choice1 == "b": #如果输入的字母是b就结束程序
flag = True
else:
print("输入有误请重新输入,或者输入b退出")
elif choice == "b": #如果输入的字母是b就结束程序
flag = True
else:
print("输入有误请重新输入,或者输入b退出")