deepwhite1103 发表于 2019-11-14 10:01:06

while循环无法结束

我的while循环无法结束,已经跟着视频一步一步敲得了,还是看不出咋回事~(而且我没办法插入图片到帖子里{:5_96:})
bingo = '优秀!'
answer = input('请输入一个赞美的词汇:')

while True:
    if answer == bingo:
      break
    answer = input('抱歉,错了,请重新输入(答案对了才能退出游戏):')

print('恭喜您猜对了')
print('猜对了也没有奖励')
#没办法结束游戏


jackz007 发表于 2019-11-14 10:24:48

本帖最后由 jackz007 于 2019-11-14 10:26 编辑

      应该把 input 纳入循环,这样,在输错的情况下,才会有机会修改 answer,目前情况下,如果 answer 的值是错的,就会直接进入死循环。
bingo = '优秀!'
while True:
    s = input('请输入一个赞美的词汇:') . strip()
    if len(s):
      if s == bingo:
            print('恭喜您猜对了')
            print('猜对了也没有奖励')
            break
      else:
            print('抱歉,错了,请重新输入(答案对了才能退出游戏):')
    else:
      break
       这个代码不仅在输入正确答案的时候可以结束程序,直接输入回车也可以。

zltzlt 发表于 2019-11-14 18:43:24

我运行正常,是不是楼主少打了字?

请输入一个赞美的词汇:优秀!
恭喜您猜对了
猜对了也没有奖励

deepwhite1103 发表于 2019-12-18 10:09:30

zltzlt 发表于 2019-11-14 18:43
我运行正常,是不是楼主少打了字?

还真是(尴尬)

deepwhite1103 发表于 2019-12-18 10:11:58

jackz007 发表于 2019-11-14 10:24
应该把 input 纳入循环,这样,在输错的情况下,才会有机会修改 answer,目前情况下,如果 answer 的 ...

谢谢大神~
页: [1]
查看完整版本: while循环无法结束