songbingbing520 发表于 2016-12-2 11:45:14

为什么count不能为负数然后循环继续?

count = 3
password = 'FishC.com'

while count:
    passwd = input('请输入密码:')
    if passwd == password:
      print('密码正确,进入程序......')
      break
    elif '*' in passwd:
      print('密码中不能含有"*"号!您还有', count, '次机会!', end=' ')
      continue
    else:
      print('密码输入错误!您还有', count-1, '次机会!', end=' ')   
    count -= 1

以上代码为什么循环不能再count为负后继续?

wumukuangshen 发表于 2016-12-2 11:45:15

不知道你用的是什么语言,但是一般BOOL类型的判断都是0为假,非0为真,所以当count ==0时,while就已经跳出循环了

飘渺463431810 发表于 2017-1-7 14:30:09

新手学习一下

sd小舅子 发表于 2017-1-10 14:31:13

while count:
等效于……
while count != 0:
所以在count从3减到0的时候……
就退出循环了……
页: [1]
查看完整版本: 为什么count不能为负数然后循环继续?