18798332503 发表于 2020-8-4 12:22:15

求大神讲解!!!

import random

secret = random.randint(0,12)
temp = input("请输入我心里想的一个数字:")
guess = int(temp)
times = 1

while (guess != secret) and (times < 3):
    if guess > secret:
      print("哥,大了大了!")
    else:
      print("嘿,小了小了!")
    temp = input("请在试试吧:")
    guess = int(temp)
    times = times + 1

if(times <= 3) and (guess == secret):
    print("哟,可以嘛!这都被你猜对了!")
    print("答对了,有奖励哦!")
    print("就奖励你洗碗吧!")
else:
    print("唔,给你三次机会都没猜对,不跟你玩了!")
   
为什么我从shell里面打开,答对了if(times <= 3) and (guess == secret):后面都会打印,但是保存后,从文档里面打开答对了直接关闭了,答错会打印打错的内容。
疑惑,求大神讲解!

Twilight6 发表于 2020-8-4 12:23:01

本帖最后由 Twilight6 于 2020-8-4 12:26 编辑



你是直接双击打开吗? 双击打开脚本文件如果没有 input ,那么因为执行速度很快,我们看着就会一闪而过了

只有遇到 input 函数时候会等待用户输入,所以你答对时候,代码瞬间就执行完毕了,实际上是显示内容了只是太快我们肉眼捕捉不到

你在你的代码最后一行下面加上一行 input() 就可以看到结果了

zltzlt 发表于 2020-8-4 12:23:13

请见:https://fishc.com.cn/thread-159173-1-1.html

永恒的蓝色梦想 发表于 2020-8-4 12:51:55

因为执行完了会直接退出,在最后加个 input() 即可。import random

secret = random.randint(0,12)
temp = input("请输入我心里想的一个数字:")
guess = int(temp)
times = 1

while (guess != secret) and (times < 3):
    if guess > secret:
      print("哥,大了大了!")
    else:
      print("嘿,小了小了!")
    temp = input("请在试试吧:")
    guess = int(temp)
    times = times + 1

if(times <= 3) and (guess == secret):
    print("哟,可以嘛!这都被你猜对了!")
    print("答对了,有奖励哦!")
    print("就奖励你洗碗吧!")
else:
    print("唔,给你三次机会都没猜对,不跟你玩了!")

input()

18798332503 发表于 2020-8-5 21:40:12

永恒的蓝色梦想 发表于 2020-8-4 12:51
因为执行完了会直接退出,在最后加个 input() 即可。

感谢

永恒的蓝色梦想 发表于 2020-8-5 21:44:08

18798332503 发表于 2020-8-5 21:40
感谢

麻烦给个最佳啦~{:10_297:}

18798332503 发表于 2020-8-5 21:48:16

大佬,想知道原因{:5_109:}

18798332503 发表于 2020-8-5 21:51:19

永恒的蓝色梦想 发表于 2020-8-5 21:44
麻烦给个最佳啦~

已经给别人了,下次留给你{:5_108:}
我问题挺多的

18798332503 发表于 2020-8-5 21:52:09

zltzlt 发表于 2020-8-4 12:23
请见:https://fishc.com.cn/thread-159173-1-1.html

老铁谢了

18798332503 发表于 2020-8-5 21:53:21

zltzlt 发表于 2020-8-4 12:23
请见:https://fishc.com.cn/thread-159173-1-1.html

大佬,偶想知道原因
页: [1]
查看完整版本: 求大神讲解!!!