鱼C论坛

 找回密码
 立即注册
查看: 1366|回复: 8

第002讲:用Python设计第一个游戏中如何猜中文

[复制链接]
发表于 2019-8-9 06:20:46 | 显示全部楼层 |阅读模式

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

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

x
print('------------------我爱鱼C工作室------------------')
temp = input("不妨猜一下小甲鱼现在心里想的是哪个数字:")
guess = int(temp)
while guess != 8:
    temp = input("哎呀,猜错了,请重新输入吧:")
    guess = int(temp)
    if guess == 8:
        print("我草,你是小甲鱼心里的蛔虫吗?!")
        print("哼,猜中了也没有奖励!")
    else:
        if guess > 8:
            print("哥,大了大了~~~")
        else:
            print("嘿,小了,小了~~~")
print("游戏结束,不玩啦^_^")

如果猜的不是年龄,而是人的名字。
只把guess==8,改成中文就会报错
如何可以猜中文的答案呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-8-9 06:22:17 | 显示全部楼层
急求,麻烦大神帮忙
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-8-9 06:51:28 | 显示全部楼层
  1. print('------------------我爱鱼C工作室------------------')
  2. guess = input("不妨猜一下名字:")
  3. while guess != '小甲鱼':
  4.     guess = input("哎呀,猜错了,请重新输入吧:")
  5.     if guess == '小甲鱼':
  6.         print("我草,你是小甲鱼心里的蛔虫吗?!")
  7.         print("哼,猜中了也没有奖励!")
  8.     else:
  9.         print('你全家 %s' % guess)
  10. print("游戏结束,不玩啦^_^")
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-8-9 06:53:28 | 显示全部楼层
  1. print('------------------我爱鱼C工作室------------------')
  2. temp = input("不妨猜一下小甲鱼现在心里想的是哪个名字:")
  3. guess = temp
  4. while guess != '小甲鱼':
  5.     temp = input("哎呀,猜错了,请重新输入吧:")
  6.     guess = temp
  7.     if guess == '小甲鱼':
  8.         print("我草,你是小甲鱼心里的蛔虫吗?!")
  9.         print("哼,猜中了也没有奖励!")
  10.     else:
  11.         print("哥,猜的不对,想想谁最帅~~~")
  12.         
  13. print("游戏结束,不玩啦^_^")
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-9 07:04:17 | 显示全部楼层
不胜感激,论坛好人多
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-9 08:30:11 | 显示全部楼层
好像并不能返回正确答案后的语句为什么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-8-9 10:26:18 | 显示全部楼层
moonwe 发表于 2019-8-9 08:30
好像并不能返回正确答案后的语句为什么
  1. print('------------------我爱鱼C工作室------------------')
  2. guess = ''
  3. print("不妨猜一下名字:", end = '')
  4. while guess != '小甲鱼':
  5.     guess = input()
  6.     if guess == '小甲鱼':
  7.         print("我草,你是小甲鱼心里的蛔虫吗?!")
  8.         print("哼,猜中了也没有奖励!")
  9.     else:
  10.         print('你全家 %s' % guess)
  11.         print('猜错了,请重新输入:', end = '')
  12. print("游戏结束,不玩啦^_^")
复制代码

如果第一次输入就让判断循环条件,真有可能进不了循环,在前面的基础上修改了一下你试试。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-8-9 10:30:47 | 显示全部楼层
相对精炼版本
print('------------------我爱鱼C工作室------------------')
temp = input("不妨猜一下小甲鱼现在心里想的是哪个名字:")
guess = temp

while True:        
    if guess == '小甲鱼':
        print("我草,你是小甲鱼心里的蛔虫吗?!")
        print("哼,猜中了也没有奖励!")
        break
    else:
        print("哥,猜的不对,想想谁最帅~~~")
        temp = input("哎呀,猜错了,请重新输入吧:")
        guess = temp
        
print("游戏结束,不玩啦^_^")

你的流程逻辑有点儿问题,
while guess != '小甲鱼':
    temp = input("哎呀,猜错了,请重新输入吧:")
    guess = temp
    if guess == '小甲鱼':
        print("我草,你是小甲鱼心里的蛔虫吗?!")
        print("哼,猜中了也没有奖励!")
    else:
        print("哥,猜的不对,想想谁最帅~~~")
这是没有猜对的时候才会弹出的代码,但是第一次猜对了的话这一段代码进不来,不会打印这段代码里的任何东西
就直接游戏结束了,代入法慢慢试一下逻辑问题
这是繁琐版本的:
print('------------------我爱鱼C工作室------------------')
temp = input("不妨猜一下小甲鱼现在心里想的是哪个名字:")
guess = temp
  if guess == '小甲鱼':
        print("我草,你是小甲鱼心里的蛔虫吗?!")
        print("哼,猜中了也没有奖励!")
while guess != '小甲鱼':
    temp = input("哎呀,猜错了,请重新输入吧:")
    guess = temp
    if guess == '小甲鱼':
        print("我草,你是小甲鱼心里的蛔虫吗?!")
        print("哼,猜中了也没有奖励!")
    else:
        print("哥,猜的不对,想想谁最帅~~~")
        
print("游戏结束,不玩啦^_^")
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-8-9 10:59:01 | 显示全部楼层
本帖最后由 cyx210 于 2019-8-9 11:02 编辑

guess = int(temp)

因为这句,guess定义为整型, 中文是字符串,所以你改中文是会报错

想猜中文的话就不要定义为整型
后面的
if guess > 8:
            print("哥,大了大了~~~")
        else:
            print("嘿,小了,小了~~~")
这段肯定也不合适了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-28 21:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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