python3课26课后作业
def showmenu():prompt = '''
|--- 新建用户:N/n ---|
|--- 登录账号:E/e ---|
|--- 推出程序:Q/q ---|
|--- 请输入指令代码:'''
while True:
chosen = False
while not chosen:
choice = input(prompt)
if choice not in 'NnEeQq':
print('您输入的指令代码错误,请重新输入:')
else:
chosen = True
求助,没有理解这里的chosen为什么要等于false,while not chosen 又是什么意思
没有理解这里的chosen为什么要等于false,while not chosen 又是什么意思
while True:
chosen = False
while not chosen:
choice = input(prompt)
if choice not in 'NnEeQq':
print('您输入的指令代码错误,请重新输入:')
else:
chosen = True
chosen 是作为这里第二个 while 循环的条件,当你输入的指令代码不在 'NnEeQq' 里面 就会提示你错误,如果在这里面
就要退出 第二个 while 的循环 ,而 while 的循环条件是 not chosen ,而想退出循环 那么就要使得条件为 False
因为条件有 not 所以想退出循环时候 chosen 就要为 True 才能退出循环
not chosen 就是把 chosen 的布尔值反转嘛,如果 chosen 为 True 那加上not 就为 False 反之 如果 chosen 为 chose 加上 not 就为 True
然后用来判断 while 循环的条件
chosen 是一个“标志”,它标志着用户输入是否正确
看到 第二个 while 循环 的条件 not chosen 意思是在 chosen 不等于 true 的情况下运行
刚开始为了进入循环,所以把 chosen 赋值为 false
直到用户输入正确,chosen = true 跳出循环 chosen = False 只是给chosen一个默认值。就像你家电器开关,默认都是关着的,不工作的。
当while not chosen 也就是while not False== while True的时候,choice开始往下进行。
也就是说,当你指令错误的时候,while是一直循环的。
当非if分支的时候,chosen开关才打开,然后while条件不满足,程序跳出循环,继续往下走。
页:
[1]