鱼C论坛

 找回密码
 立即注册
查看: 2156|回复: 11

[已解决]改进小游戏

[复制链接]
发表于 2019-7-10 16:07:18 | 显示全部楼层 |阅读模式

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

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

x
import random
secret = random.randint(1,10)
str = input ('猜猜我是几')
num = int(str)
a=1
if num ==secret:
    print("猜对了")
while num != secret and a!=3 :
        if num <secret:
            print("小了")
   
        else:
                print('大了')               
        str = input('接着猜')
        num = int(str)
        a = a+1
        if num == secret:
            print('猜对了')
if a == 3 and num != secret:
    print('你是真的菜')   
print('不玩了')

1.没有按照甲鱼说的去打,我这样是不是复杂,会占用更多内存?
2.还有就是我想在 '你是真的菜'后面再加上正确答案
于是我写了 ( '你是真的菜'+secret)
显示错误,我该怎么打呢?
真心求大佬指教!!!!
最佳答案
2019-7-10 16:43:27
import random

number = int(input('请输入小甲鱼心里想的数字吧!: '))
m = random.randint(0, 10)
i = 3
while number != m:
    print(m)
    if i > 0:
        if number < m:
            print('小了小了')
        elif number > m:
            print('大了大了')
        else:
            print('请遵守游戏规则')
        i -= 1
        number = int(input('请输入小甲鱼心里想的数字吧!: '))

print('恭喜!您猜中了,答案是{}'.format(m))
有的不需要的可以注释掉
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-7-10 16:17:01 | 显示全部楼层
import random
secret = random.randint(1,10)
str = input ('猜猜我是几')
num = int(str)
a=1
if num ==secret:
    print("猜对了")
while num != secret and a!=3 :
        if num <secret:
            print("小了")
   
        else:
                print('大了')               
        str = input('接着猜')
        num = int(str)
        a = a+1
        if num == secret:
            print('猜对了')
if a == 3 and num != secret:
    print('你是真的菜'+str(secret))    
print('不玩了')
如果这完全是你自己写的,价值远大于照抄小甲鱼老师的(也许你的比他慢)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-10 16:29:41 | 显示全部楼层
import random
a = 1
secret = random.randint(1, 10)
str = input('猜猜我是几:')
num = int(str)
while a != 3:
    str = input('接着猜:')
    num = int(str)
    a = a + 1
    if num == secret:
        print('猜对了')
        break
    else:
        if num < secret:
            print("小了")
        else:
            print('大了')
print('你是真的菜,不玩了')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-10 16:43:27 | 显示全部楼层    本楼为最佳答案   
import random

number = int(input('请输入小甲鱼心里想的数字吧!: '))
m = random.randint(0, 10)
i = 3
while number != m:
    print(m)
    if i > 0:
        if number < m:
            print('小了小了')
        elif number > m:
            print('大了大了')
        else:
            print('请遵守游戏规则')
        i -= 1
        number = int(input('请输入小甲鱼心里想的数字吧!: '))

print('恭喜!您猜中了,答案是{}'.format(m))
有的不需要的可以注释掉
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-10 16:46:31 | 显示全部楼层
666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-7-10 17:02:30 | 显示全部楼层
import random                #引入模块random   
secret = random.randint(1,10)    # secret 答案 模块中的函数randint()能随机数

print("我的第一次编程")
temp = input("猜一下我现在在想什么数字")
guess=int(temp)

while guess != secret:
    print("猜错了哦")

    guess=int(temp)
    if guess > secret :
        print("大了,大了")
    else:
        print("小了,小了")

    temp = input("再猜一下我现在在想什么数字")
    guess=int(temp)
    if guess == secret :
        print("你终于")
print("""猜中了,
不过猜中了也没奖励,哈哈
好了,游戏到此结束咯
""")
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-10 17:15:17 | 显示全部楼层
其实你想在结尾加上的东西是一个语句format的调用,我给你发的参考答案上有的,其实就是占位符的使用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-10 20:48:23 | 显示全部楼层
新手·ing 发表于 2019-7-10 16:17
如果这完全是你自己写的,价值远大于照抄小甲鱼老师的(也许你的比他慢)

您说的我之前就试过了,然后出错了,也不知道为什么
python   Shell
猜猜我是几9
大了
接着猜9
大了
接着猜9
Traceback (most recent call last):
  File "D:\笨办法\python\1.py", line 20, in <module>
    print('你是真的菜'+str(secret))
TypeError: 'str' object is not callable
这是怎么回事?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-10 20:54:42 | 显示全部楼层

感谢,学会了用break,能省很多步骤,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-10 21:08:59 | 显示全部楼层
其实感觉好像这个代码不完整且因为缩进没打好好像出现了错误,因为我只给了三次输入机会,所以最终可能都没猜中,不过通过您我知道了我想知道的,谢谢!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-12 11:13:01 | 显示全部楼层
新手·ing 发表于 2019-7-10 16:17
如果这完全是你自己写的,价值远大于照抄小甲鱼老师的(也许你的比他慢)

这段代码有两个小问题哦:
1.是重复啰嗦了,猜对了的可以删一条,另一条改进一下;
2.你是真的菜后输出正确答案,可以直接在中文字符串后面加一个逗号,再加secret就可以了。
具体参考以下:
import random
secret = random.randint(1,10)
str = input ('猜猜我是几:')
num = int(str)
a = 1

while num != secret and a!=3 :
        if num <secret:
            print("小了!!!")
   
        else:
            print('大了!!!')               

        str = input('接着猜:')
        num = int(str)
        a = a+1

if num == secret:
    print('猜对了!')

if a == 3 and num != secret:
    print('你是真的菜,正确答案是:',secret)   

print('游戏结束,不玩了!')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-12 11:29:48 | 显示全部楼层
你改成 print('你是真的菜',secret)   试试
另外,猜对了的语句 确实有点啰嗦了,可以考虑删掉其中一个,但是直接删一个肯定是不行的,可以好好思考下,多试一试。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-13 03:11

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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