鱼C论坛

 找回密码
 立即注册
查看: 2151|回复: 3

[已解决]数字游戏有一个小小的问题求助

[复制链接]
发表于 2017-5-3 23:33:45 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 a531924361 于 2017-5-3 23:35 编辑

import random
daan = random.randint(1,10)
print('---------------猜数字游戏---------------')
temp = input("不妨猜一下计算机姐姐现在想什么数字?1到10之间的整数噢")
guess = int(temp)
if guess == daan:
    print('卧槽,你是计算机姐姐心中的蛔虫么?!')
    print("哼,猜中了计算机姐姐也没有任何奖励!")
else:
    if guess > daan:
        print('猜错啦,你的数字"大"了!')
    else:
        print('猜错啦,你的数字"小"了!')
while guess !=daan:
    temp = input("猜错了,请重新输入:")
    guess = int(temp)
    if guess == daan:
        print("卧槽,你是计算机姐姐心中的蛔虫么?!")
        print("哼,猜中了计算机姐姐也没有任何奖励!")
    else:
        if guess > daan:
            print('猜错拉,你的数字"大"了!')
        else:
            print('猜错啦,你的数字"小"了!')
print("游戏结束,不玩啦☺")

这个小游戏是按照小甲鱼大大写的,有个问题:
1.这个小游戏中如果一开始输入的不是int类型的值(比如:"nimei"等等),程序就会报错。
2.在中间添加什么代码可以避免这个错误?

最佳答案
2017-5-4 09:04:38
把if temp.isdigit():
      
放到guess = int(temp)
这句前面  作为一个判断条件   isdigit()这个方法是判断所有字符都是数字  然后执行如下  否则报错  不明白再问
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-5-3 23:55:30 | 显示全部楼层
最简单的就是加个if语句判断一下输入数据,不是数字的话就打印输入错误之类的东西~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-5-4 09:04:38 | 显示全部楼层    本楼为最佳答案   
把if temp.isdigit():
      
放到guess = int(temp)
这句前面  作为一个判断条件   isdigit()这个方法是判断所有字符都是数字  然后执行如下  否则报错  不明白再问
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-5-4 09:35:13 | 显示全部楼层
本帖最后由 当回首遇上转身 于 2017-5-4 10:16 编辑

我是这样做的。。。理由同楼上
  1. while 1:
  2.     guess = input()
  3.    
  4.     if guess.isdigit():
  5.         guess = int(guess)
  6.         break
  7.     else:
  8.         print("输入类型错误,请重新输入一个整数 :", end = '')
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-27 08:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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