乐思 发表于 2023-3-13 21:50:14

无法跳出死循环

passwd = input('请输入您的密码:')
length = len(passwd)
while (passwd.isspace() or length == 0):
    passwd = input('您输入的密码为空,请重新输入:')
为什么以上程序两次输入空后就进入了死循环,再次输入字符还是提示再次输入,无法跳出循环。

wyhpylc 发表于 2023-3-13 21:58:24

passwd = input('请输入您的密码:')
length = len(passwd)
while (length == 0):
    passwd = input('您输入的密码为空,请重新输入:')

或者


passwd = input('请输入您的密码:')
length = len(passwd)
while (passwd.isspace() and length == 0):
    passwd = input('您输入的密码为空,请重新输入:')

isdkz 发表于 2023-3-13 21:59:01

因为你的 length 被你固定死了,不要在循环外对 length 赋值

对你的代码修改如下:
passwd = input('请输入您的密码:')
while (passwd.isspace() or len(passwd) == 0):
    passwd = input('您输入的密码为空,请重新输入:')

乐思 发表于 2023-3-14 20:02:22

isdkz 发表于 2023-3-13 21:59
因为你的 length 被你固定死了,不要在循环外对 length 赋值

对你的代码修改如下:

已解决,谢谢。

match123_xbd 发表于 2023-4-8 09:24:16

{:5_103:}
页: [1]
查看完整版本: 无法跳出死循环