L6-10 随机模块

一、课堂导入

上节课我们学习了time模块,学习了该模块中的三种表示方法和几种方法之间的转换。本节课我们将继续学习模块知识,学习另外一种常用的模块随机数random。

二、random模块

1.概念

# random是随机数相关模块

2.作用

# 在游戏,数据仿真模拟中有重要应用

3.相关用法

import random
# ----------------------------
# 1.随机小数
print(random.random()) #大于0且小于1之间的随机小数
print(random.uniform(1,3))  #大于1且小于3的随机小数

# ----------------------------
# 2.随机整数
print(random.randint(1,5)) #大于1且小于等于5之间的整数
print(random.randrange(1,10,2))  #大于等于1且小于3之间的整数

# ----------------------------
# 3.随机选择一个返回
print(random.choice([1,'23',[4,5]]))  #1或者23或者[4,5]
# ----------------------------
# 4.随机选择返回多个
print(random.sample([1,'23',[4,5]],2))  #列表元素任意两个组合
# ----------------------------


# ----------------------------
# 5.打乱列表顺序
item=[1,5,2,3,4]
random.shuffle(item)  #打乱item的顺序,相当于"洗牌"
print(item)

4.案例

# 1.random.randint(1,100)随机 生成一个介于1-100的整数
import  random 
a = random.randint(1,100)
print(a)

# 2.random.random()随机生成一个介于0-1之间的数,如果要得到其他范围内的 数字,乘以某个数就行
import random
a = random.random()*10
print(a)

# 3.random.choice()从列表 中随机选取一个元素
import  random 
color = ["yellow","blue","green","orange","purple","gray"]
a = random.choice(color)
print(a)

三、综合运用

# 满屏小星星
import random
import turtle
t=turtle.Pen()
t.speed(0)
def star(b):
    color=["red","orange","yellow","green","cyan","blue","purple"]
    for n in range(b):
        t.pencolor(random.choice(color))
        size=random.randint(10,40)
        x = random.randrange(-turtle.window_width()//2, turtle.window_width()//2) 
        y = random.randrange(-turtle.window_height()//2, turtle.window_height()//2) 
        t.up() 
        t.setpos(x,y) 
        t.down() 
        # 设置星星的大小
        for i in range(size):
            t.forward(size)
            t.right(144)
star(30)

四、总结

# 1.random模块用来生成随机数,它在游戏、数据仿真模拟中非常有用。 
# 2.random.randint(1,n)随机生成一个介于1-n的整数。 
# 3. random.random()随机生成一个介于0-1之间的数。 
# 4. random.choice()从列表、元组中随机选取一个元素。 
# 5. random.randrange ()在画布范围内随机生成一对坐标值(x,y)
原文地址:https://www.cnblogs.com/xiaoxiao-ya/p/11656071.html