2. 循环判断

Posted Joseph Peng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2. 循环判断相关的知识,希望对你有一定的参考价值。

一、用 while 循环、for 循环实现

  1. username = joseph,passwd = 123456
  2. 让用户输入账号和密码,输入用户和密码输入正确的话,提示你  xxx,欢迎登录,今天的日期是xxx,程序结束
  3. 错误的话,提示账号/密码输入错误,最多输入3次,如果输入3次都没有登录成功,提示失败次数过多。
  4. 需要判断输入是否为空,输入空也算输入错误一次
技术分享图片
 1 # 使用 for 循环
 2 import datetime
 3 today = datetime.date.today()
 4 username = joseph
 5 passwd = 123456
 6 for i in range(3):
 7     get_username = input(Please input username:)
 8     get_passwd = input(Please input passwd:)
 9     if get_username.strip() == str(username).strip():
10         if get_passwd.strip() == str(passwd).strip():
11             print(%s,欢迎登录,今天的日期是%s %(get_username,today))
12             break
13         else:
14             print(账号/密码输入错误)
15     else:
16         print(账号/密码输入错误)
17 else:
18     print(失败次数过多)
View Code
技术分享图片
 1  1 # 使用 While 循环
 2  2 import datetime
 3  3 today = datetime.date.today()
 4  4 username = joseph
 5  5 passwd = 123456
 6  6 count = 0
 7  7 while count < 3:
 8  8     get_username = input(Please input username:)
 9  9     get_passwd = input(Please input passwd:)
10 10     if get_username.strip() == str(username).strip():
11 11         if get_passwd.strip() == str(passwd).strip():
12 12             print(%s,欢迎登录,今天的日期是%s %(get_username,today))
13 13             break
14 14         else:
15 15             print(账号/密码输入错误)
16 16     else:
17 17         print(账号/密码输入错误)
18 18     count = count + 1
19 19 else:
20 20     print(失败次数过多)
View Code

 知识点:

  • while...else,for...else 的用法
  • .strip() 的用法

二、增加提示“用户名/密码不能为空”

技术分享图片
 1  1 import datetime
 2  2 today = datetime.date.today()
 3  3 username = joseph
 4  4 passwd = 123456
 5  5 count = 0
 6  6 while count < 3:
 7  7     get_username = input(Please input username:)
 8  8     get_passwd = input(Please input passwd:)
 9  9     if get_username.strip() != ‘‘ and get_passwd != ‘‘:
10 10         if get_username.strip() == str(username).strip():
11 11             if get_passwd == str(passwd):
12 12                 print(%s,欢迎登录,今天的日期是%s %(get_username,today))
13 13                 break
14 14             else:
15 15                 print(账号/密码输入错误)
16 16         else:
17 17             print(账号/密码输入错误)
18 18     else:
19 19         print(用户名/密码不能为空)
20 20     count = count + 1
21 21 else:
22 22     print(失败次数过多)
View Code

 知识点:

  • 判断字符串为空:s.strip() == ‘‘
技术分享图片
 1 # 增加提示用户名、密码为空
 2 import datetime
 3 today = datetime.date.today()
 4 username = joseph
 5 passwd = 123456
 6 count = 0
 7 while count < 3:
 8     get_username = input(Please input username:)
 9     get_passwd = input(Please input passwd:)
10     if not get_username and not get_passwd:
11         print(用户名/密码不能为空)
12     elif get_username.strip() == str(username).strip():
13         if get_passwd == str(passwd):
14             print(%s,欢迎登录,今天的日期是%s %(get_username,today))
15             break
16         else:
17             print(账号/密码输入错误)
18     else:
19         print(账号/密码输入错误)
20     count = count + 1
21 else:
22     print(失败次数过多)
View Code

 知识点:

  • 非空即真 ,非0即真。
 
 
 
 

以上是关于2. 循环判断的主要内容,如果未能解决你的问题,请参考以下文章

使用从循环内的代码片段中提取的函数避免代码冗余/计算开销

7-2 if判断 while循环以及for循环(流程控制)

流程控制之判断,while循环,for循环

js简洁代码片段

if循环判断

流程控制——判断,选择,循环。