鱼C论坛

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

[已解决][课后作业] 第009讲:了不起的分支和循环3

[复制链接]
发表于 2020-6-3 11:27:54 | 显示全部楼层    本楼为最佳答案   
本帖最后由 Twilight6 于 2020-6-3 11:41 编辑

  • 第一个代码:
    因为你死循环了 永远不会执行到 print() 函数那,而且 break 是终止并退出循环,在print(1) 前面也导致了print(1) 永远不被执行
  • 第二个代码:
    print(2) 下面有break 可以退出循环执行print(3) 所以都能打印
  • 动动手问题:
    1 . 逗号好几个是中文逗号,要改成英文
    2 . password 是整型 而 input 输出的是字符串 永远不可能相等 ,要在passwd 那转成整型 int 或者把 password 转为字符串 ,因为你要判断 * 号是否在你输入内,所以建议这里改成字符串
    3 .
    "密码中不能含有"*"号!" "您还有",count ,"次机会!"
      在字符串内引号如果重复使用要记得转义,除非是单双引号配合,因为Python 识别不出来你两个引号间到底是哪个引号的字符串
    4 . 没有 count - 1 = 1 这种赋值方法 改成  count -= 1 或者 count = count - 1

  1. count = 3
  2. password = '666'

  3. while count:
  4.     passwd = input("请输入密码")
  5.     if passwd == password:
  6.         print("密码正确,进入程序......")
  7.         break
  8.     elif "*" in passwd:
  9.          print("密码中不能含有\"*\"号!" "您还有",count ,"次机会!",end=" ")
  10.          continue
  11.     else:
  12.          print("密码错误!您还有",count-1, "次机会!",end=" ")
  13.     count -= 1
复制代码

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 16:43:22 | 显示全部楼层
HDP1008 发表于 2020-6-5 16:42
第一个问题我还是不能理解,第一个代码打印不出print(3),那第二个代码也break也退出循环啦

break 只退出一个循环 而不是全部循环退出
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-9 03:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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