视觉学习 Task03

Task 03

练习题:猜数字游戏

思路

  1. 首先让系统随机生成一个数字需要导入并使用random,设置上下限可以使用uniform,需要注意的是在后面的比较中用的变量的整型值,而在随机生成赋值后x还是一个字符型,所以需要将他强制转换为整型。
  2. 需要在每次猜测之前提示是第几次猜所以需要用到一个计数变量count。
  3. 接下来设置循环体,因为打算在下面用continue和break来跳过和跳出循环所以条件语句直接用1。
  4. 用input输入时,因为要求输入除整型的其他型时需要报错,错误类型为 ValueError所以在input是设置成整型输入,并用try-except拦截错误输出提示信息,而且跳过此次循环不增加猜测次数。
  5. 最后用if-elif判断是否猜对,用break跳出循环即可。
#导入random,随机生成数字,并把它转换成int型
import random
x=random.uniform(0,100)
x=int(x)

#设置猜测次数的计数变量count并初始化为1
count=1
#输出猜数字的提示信息
print('Guess a number range from 0 to 100')
#设置循环猜数的模式
while 1:
#提示输入数字并转换为int型    
    try:
        num=int(input('times you have guessed: %d'%count))
#如果输入其他型则会有ValueError的错误,用except拦截住并提示无效输入信息    
    except ValueError:
        print('Invalid Input')
#用continue跳过本次循环,不增加次数        
        continue
#用if-elif语句判断数字是否猜对 
    if num==x:
        print('Congratulate you have got the number:%d'%num)
        break
    elif num<x:
        print('Too small')
        count=count+1
    elif num>x:
        print('Too large')
        count=count+1

你可能感兴趣的:(视觉学习 Task03)