第10章random模块的学习.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第PAGE

第PAGE1页共NUMPAGES16页

第10章:random模块

琢磨不透的随机数:random模块

本章导读:

每次路过彩票销售点,总是会看到一个非常有趣的现象,买彩票的人们都在精心地计算着自己要买的彩票号码,反复斟酌,细致研究,好像中奖号码是可以推算出来的。

中奖号码是可以算出来的吗?答案是否定的,因为中奖号码是随机的,没有规律,不能预先推算。试想一下,如果中奖号码可以推算,岂不是人人都去研究彩票了。

10.1random模块简介

中奖号码之所以不可预测,因为它是随机生成的,也称为随机数。random模块就是Python提供的一个随机数生成器,可以使用random模块生成任意范围内的随机数。在前面的章节中,学会了用于绘图的的turtle模块。既然都是模块,random模块与turtle模块的使用方法是一样的,使用模块中的函数之前,必须先用import关键字导入模块。

10.1.1randint函数

想要生成一个随机整数,可以使用random模块中的randint函数。randint函数的语法见表10-l。

表10-1randint函数的语法

项目

语法说明

函数

randint(start,end)

参数

start:随机数的最小值

end:随机数的最大值

通过最大值start和最小值end确定随机数的范围(注:包含最大值和最小值)

返回值

返回start~end的一个随机整数

【示例10-1】

importrandomrandom.randint(1,100)22

importrandom

random.randint(1,100)

22

random.randint(1,100)

96

random.randint(1,100)

93

random.randint(1,100)

3

【代码解析】

第1行:使用import关键字导入random模块。

第2、3行:调用randint函数,生成-个1~100的随机数,这个随机数为22。

第4、5行:调用randint函数,生成-个1~100的随机改,这个随机致为96。

第6、7行:调用randint函数,生成-个1~100的随机数,这个随机数为93。

第8、9行:调用randint函数,生成-个1~100的随机数,这个随机数为3。

程序中调用了4次randint函数,生成的随机数都不一样。

案例10-1:猜数字赢积分

【案例说明】

通过random提块编写一个猜数字赢积分的游戏,看看谁获得的积分最多。

【案例偏程】

根据案例说明,使用random模块中的random函数生成一个1~3的随机数,并使用一个变量记录积分。如果猜对获得100积分;否则扣除50积分,玩家根据提示信息输入值,直到猜对数字。程序如下所示:

importrandom

importrandom

print(这是一个猜数字赢积分的游戏:)

print(猜对得100分,猜错扣50分:)

a=random.randint(1,3)

score=0

whileTrue:

b=input(请输入1~3之间的整数:)

b=int(b)

if(a==b):

score=score+100

print(恭喜你猜对了,你的得分是{}.format(score))

break

elif(ba):

score=score-50

print(输入的数偏小)

else:

score=score-50

print(输入的数偏大!)

【代码解析】

第1行:使用import关键字导入random模块。

第2、3行:输出提示信息。

第4行:调用randint函数生成一个1~3的随机数并赋值给变量a。

第5行:定义变量score,用于记录用户的积分。

第6~18行:进入无限循环。

第7行:获取用户输入的数并赋值给变量b。

第8行:把变量b的值转换为整数。

第9~12行:如果用户输入的数b与软件生成的随机数a相等,则积分加100并输出积分,调用break语句退出循环。

第3~5行:如果用户输入的数b比软件生成的机数大,则输出相应的提示信息。

第16~18行:如果用户输入的数b比软件生成的随机数a小,则输出相应的提示信息。

【程序运行结果】

程序运行结果如图10-1所示,由于前两次都猜错了,所以需要扣除100分,第三次精对了,获得100分,最终的得分是0。

图10-1案例10-1的程序运行结果

10.1.2uniform函数

前面讲解了如何通过random模块的

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档