鱼C论坛

 找回密码
 立即注册
查看: 1818|回复: 13

[已解决]python学习中制作小游戏代码的问题?

[复制链接]
发表于 2021-1-4 20:33:41 | 显示全部楼层 |阅读模式

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

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

x
下面是根据小甲鱼老师视频学习,自己写的代码

'''用python做个小游戏'''
counts = 3
while counts > 0:
    import random
    answer = random.randint(1,9)
    temp = input('李家睿小朋友今年几岁了')
    guess = int(temp)
    if guess == answer:
       print('好厉害,猜中了~')
       break
    else:
       if guess > answer:
          print('大了,再试试')
       else:
          print("小了,再试试")
    counts = counts - 1
print("游戏结束\n不玩了")


为啥在运行中出现这种情况:

李家睿小朋友今年几岁了5
小了,再试试
李家睿小朋友今年几岁了7
小了,再试试
李家睿小朋友今年几岁了8
大了,再试试

游戏结束
不玩了



输入数字7  说小了,数字8  说大了,不应该是整数吗?


最佳答案
2021-1-4 20:36:51
你的answer每次循环都会重置一次,把它放到外面就好啦
'''用python做个小游戏'''

import random
answer = random.randint(1,9)
counts = 3

while counts > 0:
    
    temp = input('李家睿小朋友今年几岁了')
    guess = int(temp)
    if guess == answer:
       print('好厉害,猜中了~')
       break
    else:
       if guess > answer:
          print('大了,再试试')
       else:
          print("小了,再试试")
    counts = counts - 1
print("游戏结束\n不玩了")
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-1-4 20:35:30 | 显示全部楼层
以上是自己写了,等再看视频中小甲鱼老师写的代码,发现有顺序不一样的地方,问下是否跟代码编写顺序有影响?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-4 20:36:51 | 显示全部楼层    本楼为最佳答案   
你的answer每次循环都会重置一次,把它放到外面就好啦
'''用python做个小游戏'''

import random
answer = random.randint(1,9)
counts = 3

while counts > 0:
    
    temp = input('李家睿小朋友今年几岁了')
    guess = int(temp)
    if guess == answer:
       print('好厉害,猜中了~')
       break
    else:
       if guess > answer:
          print('大了,再试试')
       else:
          print("小了,再试试")
    counts = counts - 1
print("游戏结束\n不玩了")
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-4 20:41:38 | 显示全部楼层
qiuyouzhi 发表于 2021-1-4 20:36
你的answer每次循环都会重置一次,把它放到外面就好啦

上面输入7小了,8大了,也是这个原因导致的吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-4 20:43:24 | 显示全部楼层
小小白取经 发表于 2021-1-4 20:41
上面输入7小了,8大了,也是这个原因导致的吗

是的,它重新生成了一个答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-4 20:43:55 | 显示全部楼层
qiuyouzhi 发表于 2021-1-4 20:36
你的answer每次循环都会重置一次,把它放到外面就好啦

李家睿小朋友今年几岁了5
大了,再试试
李家睿小朋友今年几岁了3
小了,再试试
李家睿小朋友今年几岁了4
小了,再试试
游戏结束
不玩了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-4 20:44:58 | 显示全部楼层
小小白取经 发表于 2021-1-4 20:43
李家睿小朋友今年几岁了5
大了,再试试
李家睿小朋友今年几岁了3

?你用的是我改完后的代码吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-4 20:48:26 | 显示全部楼层
qiuyouzhi 发表于 2021-1-4 20:44
?你用的是我改完后的代码吗

用了你的代码,正常了
还是没明白原因。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-4 20:50:11 | 显示全部楼层
小小白取经 发表于 2021-1-4 20:48
用了你的代码,正常了
还是没明白原因。。。

你看你的代码,生成随机数的代码放在了循环里面
每循环一次,答案就要重新被生成一次
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-4 20:52:20 | 显示全部楼层
qiuyouzhi 发表于 2021-1-4 20:43
是的,它重新生成了一个答案

明白了!!游戏开始,共三次机会,第一次输入错误(假如答案是5),再次输入时,实际上原来的5已经不是5了,重新变了,所以后面的两次再怎么输入,数都是变的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-4 20:53:29 | 显示全部楼层
小小白取经 发表于 2021-1-4 20:52
明白了!!游戏开始,共三次机会,第一次输入错误(假如答案是5),再次输入时,实际上原来的5已经不是5 ...

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

使用道具 举报

 楼主| 发表于 2021-1-4 20:53:40 | 显示全部楼层
qiuyouzhi 发表于 2021-1-4 20:50
你看你的代码,生成随机数的代码放在了循环里面
每循环一次,答案就要重新被生成一次

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

使用道具 举报

 楼主| 发表于 2021-1-4 21:03:08 | 显示全部楼层

前辈,请教下,批量的空格是怎么操作的,我看视频中有一节操作,小甲鱼老师,全选代码,(感觉是按了某个快捷键)然后每一行代码都退格了,有这个吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-4 21:04:52 | 显示全部楼层
小小白取经 发表于 2021-1-4 21:03
前辈,请教下,批量的空格是怎么操作的,我看视频中有一节操作,小甲鱼老师,全选代码,(感觉是按了某个 ...

Ctrl + [   (如果你是在用IDLE的话)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-16 20:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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