| 
 | 
 
 
发表于 2022-12-29 11:20:35
|
显示全部楼层
 
 
 
 本帖最后由 isdkz 于 2022-12-29 11:31 编辑  
 
因为你对 op 的赋值在循环外所以在循环中 op 的值一直不变,所以你退不出的不是内层循环, 
 
而是外层循环,然后从外层循环又进入了内层循环 
 
- movies = {}
 
  
- print("欢迎进入鱼C影评小程序")
 
  
- while True:
 
 -     print("1.数据录入")
 
 -     print("2.查询数据")
 
 -     print("3.退出程序")
 
 -     op = int(input("请输入想要的功能(1/2/3):"))
 
 -     
 
 -     if op == 3:
 
 -         break
 
  
-     if op == 1:
 
 -         go = True
 
 -         while go:
 
 -             movie = input('请输入电影名字')
 
 -             date = input('请输入日期')
 
 -             directors = [i.strip() for i in input("请输入演员名称多人用'/'隔开").split('/')]
 
 -             actors = [i.strip() for i in input("请输入导演名称多人用'/'隔开").split('/')]
 
 -             scores = input('请输入电影评分')
 
 -             movies[movie] = [date, directors, actors, scores]
 
  
-             if 'NO' == input("请问是否继续录入(YES/NO):"):
 
 -                 go = False
 
  
-     if op == 2:
 
 -         name = input('请输入要查询的电影名称')
 
 -         if name in movies:
 
 -             print(f'电影名称为{name}')
 
 -             print(f'上映日期为{movies[name][0]}')
 
 -             print(f"导演名单:{movies[name][1]}")
 
 -             print(f"演员名单:{movies[name][2]}")
 
 -             print(f"当前评分:{movies[name][3]}")
 
 -         else:
 
 -             print('没有这个')
 
  复制代码 |   
 
 
 
 |