鱼C论坛

 找回密码
 立即注册
查看: 2411|回复: 4

求问大家Python009讲动动手问题,为什么我这样写不对

[复制链接]
发表于 2017-9-18 19:36:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
secreat = 'FishC.com'
count=3
while count:
    tempt = input("请输入密码")
    while"*" in tempt:
        tempt = input('密码中不能含有"*"!您还有',count,'次机会')
    count -= 1
    if tempt == secreat:
        print("密码正确,进入程序.....")
        break
    else :
        print('密码输入错误!您还有',count,'次机会!')
      

      
#在输入正确和除*以外的密码反馈都正确,但是输入*时,就会出错,把*当做乘号处理了。
Traceback (most recent call last):
  File "E:/python/009ex01.py", line 6, in <module>
    tempt = input("密码中不能含有"*"!您还有',count,'次机会")
TypeError: can't multiply sequence by non-int of type 'str'
(K~S~5`%N$4J%DN@CF6YVHB.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-9-18 20:05:46 | 显示全部楼层
  1. tempt = input('密码中不能含有"*"!您还有',count,'次机会')
复制代码

改成
  1. tempt = input('密码中不能含有"*"!您还有%d次机会'%count)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-9-19 09:27:03 | 显示全部楼层

果然对了,感谢!小甲鱼的参考答案中
print('密码中不能含有"*"号!您还有', count, '次机会!', end=' ')
是这么写的,能告诉我为什么我那样写会出错吗
   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-19 14:07:19 | 显示全部楼层
因为你输入中有*的时候没有跳出while循环,所以他会再次执行&#160;&#160;tempt = input('密码中不能含有"*"!您还有',count,'次机会'),并没有执行你后面的count-=1,所以一直是三次不变。

评分

参与人数 1荣誉 +4 鱼币 +2 贡献 +2 收起 理由
Molotus + 4 + 2 + 2

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-22 11:49:53 | 显示全部楼层
  1. password = 'FishC.com'
  2. i = 3
  3. while i:
  4.     passwd = input("请输入密码:")
  5.     if passwd == password:
  6.         print("密码正确,进入程序......")
  7.         break
  8.     elif "*" in passwd:
  9.         print("密码中不能包含有“*”号!,您还有",i,"次机会!",end="")
  10.         continue
  11.     else:
  12.         print('密码输入错误,您还有',i-1,'次机会!',end="")
  13.     i -= 1
复制代码



换一个调用方式,也可以。先把:"密码中不能包含有“*”号!,您还有",i,"次机会!" 打印出来,再要求输入密码,就不会冲突了。
另外,要满足输入“*”号不减少次数就得加入continue了。密码正确跳出while还需要break。

评分

参与人数 1荣誉 +4 贡献 +3 收起 理由
Molotus + 4 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-19 19:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表