<>猜数字游戏
问题描述:在1—100的范围内,进行猜数字,共有8次机会。
键入1—100之间的整数,回车看结果。根据提示,进一步猜测。
解答:代码示例:
#猜数字游戏 import random #生成随机数 secret=random.randint(1,100) print(
"猜数字游戏!1—100的整数,你最多可以猜8次") tries=1 while tries<=8: guess=int(input(
"1-100的整数,第%d次猜,请输入:"%(tries))) if guess==secret: print("恭喜答对了!你只猜了%d次! \n
就是这个:%d!"%(tries,secret)) break elif guess>secret: print("不好意思,你的数大了一点!") tries
+= 1 else: print("不好意思,你的数小了一点!") tries += 1 else: print("哎呀!怎么还没猜中!再见咯!")
运行示例:
##拓展: random()生成不同数字类型的用法
random.random() 用于生成一个随机浮点数:range[0.0,1.0)
random.uniform(a,b)
用于生成一个指定范围内的随机浮点数,a,b为上下限,只要a!=b,就会生成介于两者之间的一个浮点数,若a=b,则生成的浮点数就是a
random.randint(a,b) 用于生成一个指定范围内的整数,a为下限,b为上限,生成的随机整数a<=n<=b;若a=b,则n=a;若a>b,报错
random.randrange([start], stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1
random.choice(sequence)
从序列中获取一个随机元素,参数sequence表示一个有序类型,并不是一种特定类型,泛指list,tuple,字符串等
random.shuffle(x[,random]) 用于将一个列表中的元素打乱
random.sample(sequence,k) 从指定序列中随机获取k个元素作为一个片段返回,sample函数不会修改原有序列