|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
各位鱼油
我刚开始学习Python,遇到个问题,因为Python3中的input输入后的数据类型均为str类型,请问鱼油,是否可以针对Python的input数据类型做判断和动作。
源码如下:
import random #定义随机函数
times = 3 #定义尝试次数
secret = random.randint(0,10) #生成0-10的随机数
guess = 0
print ('--------------我爱鱼C工作室-----------------')
print('猜一猜我心目中的数字(0-10之间):', end='')
print('你有%d机会:'%(times))
while (guess != secret) and (times > 0): #循环判断如果随机数和输入数值不相同,且次数还在范围内
times = times - 1 #次数递减
temp = input() #输入数值
if isinstance(temp,int) != True: #判断数据类型
print('您输入的数据:'+ temp +'不合法,请重新输入我心目中的数字(0-10)之间')
else:
guess = int(temp)
if guess == secret:
print('猜对了!')
print('猜对了也不给奖励!你咬我呀!')
else:
if guess > secret:
print('哥,大了大了!还有%d机会' % (times))
else:
print('嘿,小了小了!还有%d机会' % (times))
if times > 0:
print('在尝试一次吧', end='')
else:
print('没机会了')
print('我心目中的数字是%d' % (secret))
print('游戏结束!')
这种方法是不可取的,if isinstance(temp,int) != True:判断时,temp永远为str,对于初学者可以用temp.isdigit()做简单的判定,最好的方法是用异常处理try
|
|