
刚刚学习了两个关于循环的案例来分享一下一、根据输入的账号和密码执行登录操作具体要求如下1.设定正确的账号和密码 2.输入正确的账号和密码则登录成功输入错误的则继续输入直到正确为止 3.输入的账号和密码不能为空接下来是完整代码块while True: username input(请输入用户账号) password input(请输入用户密码) if username or password : print(输入的账号或密码不得为空) continue if username 1839632447 and password wytlike688: print(登录成功) break elif username 18806092052 and password wytlike688: print(登录成功) break else: print(用户名或者密码输入错误请重新输入)这里需要注意username input(请输入用户账号) password input(请输入用户密码)这两行代码必须写在循环内部如果写在循环外部会出现错误程序将会无限循环输入账号密码这一步。以下是我和 DeepSeek 交流后它给我的分析如果循环条件涉及用户输入那么输入语句必须放在循环体内这样每次循环都能获取新的输入用户才有机会改变条件。如果放在循环外输入只执行一次条件判断结果不变要么直接退出如果第一次就正确要么无限循环如果第一次错误。二.猜数字游戏具体要求如下系统随机生成一个数字用户输入一个数字系统判断输出“大了”“小了”或者“猜对了”三个字样以下是代码import random random_num random.randint(1,100) #随机生成一个1到100的随机数 while True: num int(input(请输入你猜的数字)) if num random_num: print(猜大了) elif num random_num: print(猜小了) else: print(恭喜猜对了) break print(随机生成的数字是,random_num)但是这个猜数字游戏我个人不是很满意后续我根据和deepseek的交流重新改进了一下整个代码块import random while True: # 外层循环控制是否开始新一局 random_num random.randint(1, 100) # 每局重新生成随机数 print(新一局开始我已经想好了一个1到100之间的数字。) while True: # 内层循环猜数字 try: num int(input(请输入你猜的数字)) except ValueError: print(请输入有效的整数) continue if num random_num: print(猜大了) elif num random_num: print(猜小了) else: print(恭喜猜对了) break # 询问是否继续 while True: # 这个循环用于确保玩家输入有效的选项 choice input(是否再玩一次(y/n)).strip().lower() if choice in [y, yes]: break # 跳出询问循环继续外层循环开始新一局 elif choice in [n, no]: print(感谢游玩再见) exit() # 或者 break 两次但 exit() 直接结束程序更简单 else: print(请输入 y 或 n。)改进说明这个代码引入了三个循环一个大循环两个小循环大循环内的两个小循环优先级平等执行分先后这个代码块实现了让用户拥有选择是否再来一局猜数字游戏的权利当第一次运行程序猜对数字后用户会进入选择界面输入y/n来选择是否再进行一局游戏或者直接退出如果输入y那么又会进入一开始的小循环继续进行数字游戏如果输入n这里还引入了exit语句直接结束程序。补充说明代码还引入了try-except语句来避免用户在输入整数时误触造成的程序崩溃或者无法继续进行后面代码的问题。