In the learning process, we often encounter the usage of while True. The following is an example to illustrate:
Establish a user login system. The user enters the user name and password. If correct, they can enter the system.
1. My initial writing method:
d = {} #数据库字典,所有用户的用户名密码存储在此 name = input("请输入您的用户名:") if name in d: password = input("请输入您的密码") if d[name] == password: print('进入系统') else: print('您输入的密码错误,请重新输入') else: print('您输入的用户名不正确,请重新输入')
This program I wrote seems to be logically correct:
——Let first The user enters a username. If the username exists, the user continues to enter a password. If the password is correct, the system is entered. If the password is incorrect, re-enter it.
——If the user name does not exist, it will prompt "The user name you entered is incorrect, please re-enter"
However, during the actual operation, if the user name and password entered by the user are both Correct, of course there is no problem. But if any input is incorrect, the system will only display "The user name you entered is incorrect, please re-enter" or "The password you entered is incorrect, please re-enter".
In other words, if an error occurs and there is no return to the original place, the request is made to continue input.
2. Use the while True loop statement:
The core idea of using this statement is that if an error occurs, the loop can continue.
d = {} while True: name = input('请输入您的用户名:') if name in d: break else: print('您输入的用户名不存在,请重新输入') continue while True: password = input('请输入您的密码:') if d[name] == password: print('进入系统') break else: print('您输入的密码不正确,请重新输入') continue
The above program can achieve the desired purpose: when the user name or password is entered incorrectly, return to the beginning and request continued input.
The while True statement must have a break statement to end the loop, otherwise the loop will continue.
Of course, we have encountered that if the password is wrong, you will be prompted to have several chances to enter the password. It can be achieved like this:
count = 5 while count: password = input('请输入您的密码:') if d[name] == password: print('进入系统') break else: count -= 1 print('您输入的密码不正确,还有{}次输入机会'.format(count)) continue
Thank you everyone for reading, I hope you will benefit a lot.
This article is reproduced from: https://blog.csdn.net/geerniya/article/details/77524173
Recommended tutorial: "python tutorial"
The above is the detailed content of Teach you step by step how to use the while True statement in python. For more information, please follow other related articles on the PHP Chinese website!