倪劳资 发表于 2020-7-4 17:05:04

求助python第9讲课后题动动手的第一个(纯小白,路过的大佬可以帮一下小弟嘛)

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的前后要加入逗号呢
我试着用的是   print("密码输入错误!您还有',count - 1,'次机会!",end = '')
但是在idle中打印出来的是 密码输入错误!您还有',count - 1,'次机会!请输入密码:
用双引号为什么就不可以呢,不应该跟打印let's go差不多嘛
(纯小白,感谢路过的大佬能抽空儿帮忙解答一下){:10_266:}

qiuyouzhi 发表于 2020-7-4 17:08:15

这是打印多个元素呀,逗号是分隔符,先打印"密码输入错误!您还有",然后打印count-1的值,最后打印"次机会!"

Twilight6 发表于 2020-7-4 17:12:10





请问,为什么count的前后要加入逗号呢?

因为逗号就算是分隔开不同数值用的吧

反正这个就是语法规则,你记住就好,学习一门语言,就要遵循他的语法规则哈~

我试着用的是   print("密码输入错误!您还有',count - 1,'次机会!",end = ''),用双引号为什么就不可以呢,不应该跟打印let's go差不多嘛

因为 Python 对字符串使用引号时候是相互配对的,你不能一单一双混合对一个字符串使用,这里 Python 就认为了你的最外层双引号是字符串标志,里面单引号只是你想打印的引号

正确应该改成这样:print("密码输入错误!您还有",count - 1,"次机会!",end = ''),这样在 IDLE 中不能直接打印 因为没有定义 count 的值是多少





倪劳资 发表于 2020-7-4 18:21:55

Twilight6 发表于 2020-7-4 17:12
因为逗号就算是分隔开不同数值用的吧

反正这个就是语法规则,你记住就好,学习一门语言,就 ...

啊,谢谢您!!{:5_109:}

倪劳资 发表于 2020-7-4 18:22:36

qiuyouzhi 发表于 2020-7-4 17:08
这是打印多个元素呀,逗号是分隔符,先打印"密码输入错误!您还有",然后打印count-1的值,最后打印"次机会! ...

谢谢您啦{:5_109:}
页: [1]
查看完整版本: 求助python第9讲课后题动动手的第一个(纯小白,路过的大佬可以帮一下小弟嘛)