鱼C论坛

 找回密码
 立即注册
查看: 91|回复: 5

[已解决]一个特别简单的问题

[复制链接]
发表于 2025-2-14 14:44:38 | 显示全部楼层 |阅读模式

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

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

x
求问guess=0和temp=input() guess=int(temp)神马意思


import random
times=3
secret=random.randint(1,10)

guess=0
print('来玩个游戏吧',end='')
while(guess!=secret)and(times>0):
    temp=input()
    guess=int(temp)
    times=times-1
    if guess==secret:
        print('哇猜对了')
    else:
        if guess<secret:
        
     
            print('小了,小了')
        else:
            print('大了,大了')
        if times>0:
            print('猜错了,再试一次吧',end='')
        else:
            print('hh,机会用光了')


print('游戏结束')

最佳答案
2025-2-14 20:46:52
本帖最后由 jackz007 于 2025-2-14 20:48 编辑
import random                       #  引入随机数模块
times=3                             #  循环 3 次,如果猜错,就循环再猜,一共 3 次机会。
secret = random.randint(1,10)       #  产生一个数值在 1 - 10 之间的随机数(整数)

guess=0                             #  guess 是循环控制变量之一,需要先为其赋予一个不可能的值 0(答案范围之外),以便可以顺利进入 while 循环
print('来玩个游戏吧',end='')
while(guess!=secret)and(times>0):   #  在答案错误,同时,还有剩余循环次数的情况下开始(或继续)循环
    temp=input()                    #  从键盘读取输入的字符串,比如,'6',存入变量 temp
    guess=int(temp)                 #  从字符串 temp 中提取数值,比如,从 '6' 中提取到 6,存入变量 guess
    times=times-1                   #  循环次数减 1
    if guess==secret:               #  如果 guess 与 secret 数值相等,那就是猜对了
        print('哇猜对了')
    else:                           #  否则
        if guess<secret:            #  如果 guess 比 secret 小
            print('小了,小了')
        else:                       #  否则
            print('大了,大了')
        if times>0:                 #  如果还有剩余的循环次数     
            print('猜错了,再试一次吧',end='')
        else:                       #  否则
            print('hh,机会用光了')
print('游戏结束')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2025-2-14 14:44:46 | 显示全部楼层
你这个问题涉及到两部分代码:

1. `guess=0`:将变量 guess 初始化为 0。
2. `temp=input()` 和 `guess=int(temp)`:这两行代码的意思是先通过 input() 函数获取用户输入的数据,并将其临时存储在 temp 变量中;然后再通过 int() 函数将 temp 转换为整数,并赋值给 guess

代码块中的整体逻辑是实现一个简单的数字猜谜游戏。以下是你的代码中修正后的版本:
import random
times = 3
secret = random.randint(1, 10)

guess = 0
print('来玩个游戏吧', end=' ')
while (guess != secret) and (times > 0):
    temp = input()
    guess = int(temp)
    times = times - 1
    if guess == secret:
        print('哇猜对了')
    else:
        if guess > secret:
            print('猜错了,大一点,再试一次吧', end=' ')
        elif guess < secret:
            print('猜错了,小一点,再试一次吧', end=' ')
        else:
            print('hh,机会用光了')

print('游戏结束')

在这里,你需要注意的是:

  • if guess > secret 改成适当的条件;
  • 确保每次提示后面带上逗号和空格,以便用户能够继续输入。


希望这能帮助你理解代码的含义和如何修正其中的错误!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-2-14 16:50:11 | 显示全部楼层
guess=0
这是初始化变量guess为0。这是为了在循环开始之前给guess一个初始值,避免在循环条件中使用未定义的变量。
temp=input() 和 guess=int(temp)
使用input()获取玩家输入的字符串,并存储在temp中。
将字符串temp转换为整数,并赋值给guess,以便后续的比较操作。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-2-14 20:46:52 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jackz007 于 2025-2-14 20:48 编辑
import random                       #  引入随机数模块
times=3                             #  循环 3 次,如果猜错,就循环再猜,一共 3 次机会。
secret = random.randint(1,10)       #  产生一个数值在 1 - 10 之间的随机数(整数)

guess=0                             #  guess 是循环控制变量之一,需要先为其赋予一个不可能的值 0(答案范围之外),以便可以顺利进入 while 循环
print('来玩个游戏吧',end='')
while(guess!=secret)and(times>0):   #  在答案错误,同时,还有剩余循环次数的情况下开始(或继续)循环
    temp=input()                    #  从键盘读取输入的字符串,比如,'6',存入变量 temp
    guess=int(temp)                 #  从字符串 temp 中提取数值,比如,从 '6' 中提取到 6,存入变量 guess
    times=times-1                   #  循环次数减 1
    if guess==secret:               #  如果 guess 与 secret 数值相等,那就是猜对了
        print('哇猜对了')
    else:                           #  否则
        if guess<secret:            #  如果 guess 比 secret 小
            print('小了,小了')
        else:                       #  否则
            print('大了,大了')
        if times>0:                 #  如果还有剩余的循环次数     
            print('猜错了,再试一次吧',end='')
        else:                       #  否则
            print('hh,机会用光了')
print('游戏结束')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-2-16 00:25:15 | 显示全部楼层
FishC 发表于 2025-2-14 14:44
你这个问题涉及到两部分代码:

1. `guess=0`:将变量 guess 初始化为 0。

guess=0初始化什么意思,我为什么要在这加上guess后面直接赋值不行吗?
print('来玩个游戏吧', end=' ')
temp = input()
guess = int(temp)
为什莫和temp=input('来玩个游戏吧')
             guess=int(temp)
一个效果?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-2-16 00:25:21 | 显示全部楼层
皮蛋子h 发表于 2025-02-16 00:25
FishC 发表于 2025-2-14 14:44
你这个问题涉及到两部 ...


初始化是将变量赋予一个初始值的过程。在你的例子中,`guess=0` 即是将 `guess` 变量初始化为 0。初始化可以确保在使用变量之前,它已经被赋予了一个确定的值。

关于初始化的原因和效果,可以参考下面的代码示例:
guess = 0  # 初始化
print('来玩个游戏吧', end=' ')
temp = input()
guess = int(temp)


temp = input('来玩个游戏吧')
guess = int(temp)

这两段代码实际上实现的是一样的效果,即获取用户输入并将其转换为整数存储在 `guess` 变量中。

初始化 `guess` 并不是必须的,但它有助于代码的可读性和稳定性。例如,如果在读取用户输入前对 `guess` 进行某些操作,会造成错误。因此,初始化可以避免潜在的错误。

希望以上解释对你有帮助!如果还有问题,随时提问哦。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-24 02:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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