标志位
可以理解为:定义一个变量,用于判断整个程序是否处于活动状态。这个变量被称为 标志 充当了程序的交通信号灯。你可让程序在标志为 True 时继续运行,
并在任何事件导致标志的值为 False 时让程序,停止运行。这样,在 while 语句中就只需检查一个条件 — 标志的当前值是否为True
例一:
s = "hello word!,晚上12:30了" #变量名可以变,不一定非得取s. active= True #设置变量为True让程序最初处于活动状态,就让程序一直运行 while active: #只要变量 active 为 True ,循环就将继续 user = input(s) #在用户输入后使用一条 if 语句来检查变量 message 的值 if user == "qiut": #判断如果用户输入的是"quit active = False # 就将变量 active 设置为 False ,这将导致 while 循环不再继续执行 else: print(s)
返回:hello word!,晚上12:30了
#先设置程序一直跑为True.,设置一个判断的条件,如果为真就一直执行,如果为假则退出
例二:
count = 1 # 计数 exit_flag = True #这是一个变量,当变量为真时就一直循环 while exit_flag: # if count == 3: # 设置条件 exit_flag = False # 当条件满足 count += 1 print(count) else: print('循环正常完毕') #理解:设置循环,条件满足就退出循环,不满足就继续循环
返回:2,3,4 环正常完毕
例子
用户登录(3次机会重新试)
name = "alex" password = "123" count = 0 flag = True while flag and count < 3: #同时让程序运行并且设置 count的次数小于3 user_name = input("请输入你的用户名:").strip() user_password = input("请输入你的密码").strip() if user_name == name and user_password == password: #判断输入的是否与之前保存的是否一样 print("欢迎登陆") flag = False #当满足条件了,即输入都正确,就可以退出循环 else: #否则不满足,就执行下面的语句 print("用户名或者密码错误!")#提示用户输错了 count += 1 #在while循环里,输错的情况下,让count+1,前面设置了count不能大于3次时相互呼应。
""""
当开始将flag这个变量赋值为True,然后运行while flag and count < 3: 这个语句,此时count = 0,
就相当于是while True and count(0)< 3,这个语句结果就是True,所以就一直往下走,执行下面的语句当用户交互满足条件之后,
打印欢迎登陆,走到 flag = False 这是一个变量赋值将flag赋值为False,程序是走了,但没有输出结果,然后再往下走,因前面if
条件成立了,所以就不会走else下面的语句,要打印欢迎登陆,然后走到count +=1,将count的值变成等于1,然后程序又回到上面,
运行while flag and count < 3:
此时count 的值就等于1因为下面已经将flag = False,所以这时的flag的值就变成False了,运行while flag and count < 3:
就变成 while False and count(1)<3.结果是False,所以程序就不走了。当然还有条件不满足的时候,不满足是将执行count ==3
之后,就执行else后面的语句,因为if条件不满足才走的else.
""""