鱼C论坛

 找回密码
 立即注册
查看: 876|回复: 7

代码中一些不太懂的地方,求解释,谢谢

[复制链接]
发表于 2020-5-15 09:51:55 | 显示全部楼层 |阅读模式

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

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

x
import random
secret=random.randint(1,100)                                                      
time=3
guess=0       ##为什么要赋值guess=0        
print('-----welcome to game world-----')                                                  
#:为什么要一下的标红步骤不需要了:#guess=int(temp)
#print('give a number:')

while (guess!=secret)and (time>0):
    temp=input('')
    guess=int(temp)
    time=time-1
    if(guess==secret)and (time>0):
        print('Wa!congratulations to you')
    else:
        if (guess>secret)and (time>0):
            print('sorry,too big')
        if (guess<secret) and (time>0):
            print('sorry,too small')
        if time==0:
            print('sorry,there no times')
print('game over')



以上问题烦请大家帮忙解答一下,谢谢

需要解答的部分

需要解答的部分
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-15 09:57:01 | 显示全部楼层
① 不然 guess 没有初始化, 程序就会报错
② 已经把输入放进循环里了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-15 09:57:56 | 显示全部楼层
import random
secret=random.randint(1,100)                                                      
time=3
guess=0       # guess 等于只是把值初始化,不然你while 那会报错
print('-----welcome to game world-----')    
print('give a number:')                                              
# 这边几步不需要是因为放到了循环里去了 ,循环里有input 用户输入
while (guess!=secret)and (time>0):    
    temp=input('')
    guess=int(temp)
    time=time-1
    if(guess==secret)and (time>0):
        print('Wa!congratulations to you')
    else:
        if (guess>secret)and (time>0):
            print('sorry,too big')
        if (guess<secret) and (time>0):
            print('sorry,too small')
        if time==0:
            print('sorry,there no times')
print('game over')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-15 09:59:43 | 显示全部楼层
还有 建议  以后 如果你要
print('give a number:') 
temp=input('')
改成:
temp = input('give a number:')
效果是一样的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-15 10:02:30 | 显示全部楼层
你得赋值了下面才能使用,不赋值的话,python不知道这个变量是个啥。

并且赋值还不能复制等于你randint里面的范围数字,不然就没下面的猜数字环节了。

标红步骤不需要,是因为下面有个类似的int代码了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-15 10:07:24 | 显示全部楼层
你代码里面还有一个错误,不过程序不会报错:
1.你注释掉了那个print,所以那个print里面的内容要把它放到input里面
import random
secret=random.randint(1,100)                                                      
time=3
guess=0       ##初始化guess,不然会报错        
print('-----welcome to game world-----')                                                  
#:为什么要一下的标红步骤不需要了:#guess=int(temp)
#答:因为前面guess已经赋值了,而且赋的值是int类型得值
#print('give a number:')
#答:input里面包括输出
while (guess!=secret)and (time>0):
    temp=input('give a number:')
    guess=int(temp)
    time=time-1
    if(guess==secret)and (time>0):
        print('Wa!congratulations to you')
    else:
        if (guess>secret)and (time>0):
            print('sorry,too big')
        if (guess<secret) and (time>0):
            print('sorry,too small')
        if time==0:
            print('sorry,there no times')
print('game over')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-15 11:27:09 | 显示全部楼层
如果不先声明一个变量名的初始值,那么在后面循环的条件判断时就会因为无法找到guess这个变量而报错。

第二个问题是前面这段代码没有改进的时候使用的input方法返回的结果是字符串,所以需要用int来改变数据类型,这里前面没有使用input方法,所以不用特地int来改变。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-15 12:41:32 | 显示全部楼层
import random
secret=random.randint(1,100)                                                      
time=3
guess=0      
print('-----welcome to game world-----')    
print('give a number:')                                              
while (guess!=secret)and (time>0):    
    temp=input('')
    guess=int(temp)
    time=time-1
    if(guess==secret)and (time >= 0):
        print('Wa!congratulations to you')
    else:
        if (guess>secret)and (time >= 0):
            print('sorry,too big')
        if (guess<secret) and (time >= 0):
            print('sorry,too small')
#这里不用再判断等于0的情况,否则会出现输入三次,判断两次的情况
print('sorry,there no times, game over')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-21 08:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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