luck78 发表于 2021-12-14 19:34:55

不得其解

import random
alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
digit = "0123456789"
show_num = [] # 存贮20组号码

count = 0

while count < 3: # 三次机会
    print("-----选车牌号码程序------")
    for i in range(20): # 一组20个号码
      ran_str= "京"+ random.choice(alpha) + "-" + ''.join(random.sample(alpha + digit, 5))
      show_num.append(ran_str)
    print(show_num)
   

    choice = input("输入您喜欢的号码:").strip()
    if choice in show_num:
      print("恭喜您,您选择的号码是:京%s"%choice)
      break
    else:
      print("请继续选择")
      continue

    count += 1


为什么 count += 1在pycharm里提示unreachable,导致count 没有+1一直循环下去

wp231957 发表于 2021-12-14 19:38:19

检查一下缩进

小羊趴在云朵上 发表于 2021-12-14 19:42:09

本帖最后由 小羊趴在云朵上 于 2021-12-14 19:43 编辑

试了一下,在“print("请继续选择")   continue”之间,加入“count += 1”;即将“count += 1”移动到“continue”前一行,这样就只能运行3次

luck78 发表于 2021-12-14 19:42:44

wp231957 发表于 2021-12-14 19:38
检查一下缩进

缩进没有问题

luck78 发表于 2021-12-14 19:45:02

小羊趴在云朵上 发表于 2021-12-14 19:42
试了一下在
“print("请继续选择")
      continue”


我自己试过在第14行这个位置写count += 1 就可以只运行3次,但是明明在最后写应该是没有问题的

小羊趴在云朵上 发表于 2021-12-14 19:50:02

可是写在后面不会运行这一行欸

小羊趴在云朵上 发表于 2021-12-14 19:53:54

我懂了,continue语句跳出了本次循环,回到了循环体的开头,所以,你后面+1,并没有被执行

小羊趴在云朵上 发表于 2021-12-14 19:54:39

下面这个是我记的笔记,你可以看一下,没准有助于理解

冬雪雪冬 发表于 2021-12-14 20:03:28

unreachable表示这句正常情况永远不会执行。
if为真break退出循环
为假continue跳过count += 1

luck78 发表于 2021-12-14 20:26:18

小羊趴在云朵上 发表于 2021-12-14 19:54
下面这个是我记的笔记,你可以看一下,没准有助于理解

好的,感谢!
页: [1]
查看完整版本: 不得其解