python随机数random库

本文详细介绍了Python中random库的基本及扩展随机数生成函数,包括seed(), random(), randint(), randrange(), getrandbits(), uniform(), choice(), shuffle()等。探讨了随机数种子的作用及其初始化方法,以及各种函数的具体应用实例。

random库生成随机数

基本随机数函数:seed(),random()
扩展随机数函数:randint(),getrandbits(),uniform()
                             randrange(),choice(),shuffle()

基本随机数函数:

python 中的基本随机函数都需要随机数种子

随机数种子(10)-->梅森旋转算法-->(生成10个随机数(小数))
随机数种子是确定随机数的序列

seed()函数就是初始化随机数种子的
eg:random.seed(10),产生种子10对应的序列
注:如果不使用seed()函数,随机数种子默认为当前系统时间。
random.random()函数,产生(0.0,1.0)之间的小数

import random
random.seed(10) #初始化随机数种子为10
random.random() #产生一个0.0-1.0之间的随机小数

扩展随机数函数:

  1. randint(a,b)函数, 生成一个[a,b]之间的整数
  2. randrange(m,n[,k])生成一个[m,n]之间以k为步长的随机数

eg:random.randrange(10,100,10) -->:10   

      3.getrandbits(k)生成一个k比特长的随机整数

eg:random.getrandbits(16) 生成一个16比特长的整数

     4.uniform(a,b) 生成一个[a,b]之间的随机小数

eg:random.uniform(10,100)-->13.2345346786543453

     5.choice(seq)从序列seq中随机选择一个元素
eg:seq=[1,23,4,5,6,7,8,6,8]
random.choice(seq)

      6.shuffle(s) 将s中元素随机排列,返回打乱后(随机排列)的序列
eg:s=[1,2,3,4,5,6,7,8,9]
random.shuffle(s);
 

Pythonrandom模块提供了生成随机数的功能。你可以使用该模块来生成各种类型的随机数,包括整数、浮点数和随机选择列表中的元素等。 下面是一些常用的random模块函数: 1. random.random():生成一个0到1之间的随机浮点数。 2. random.randint(a, b):生成一个在指定范围内的随机整数,包括a和b。 3. random.uniform(a, b):生成一个在指定范围内的随机浮点数,包括a和b。 4. random.choice(seq):从给定的序列中随机选择一个元素。 5. random.shuffle(seq):将给定的序列随机排序。 6. random.sample(population, k):从给定的总体中选择k个不重复的元素。 以下是一个示例代码,展示如何使用random模块生成随机数: ```python import random # 生成一个0到1之间的随机浮点数 random_float = random.random() print("随机浮点数:", random_float) # 生成一个在指定范围内的随机整数 random_int = random.randint(1, 10) print("随机整数:", random_int) # 生成一个在指定范围内的随机浮点数 random_uniform = random.uniform(1.0, 5.0) print("随机浮点数:", random_uniform) # 从给定的序列中随机选择一个元素 fruits = ['apple', 'banana', 'orange'] random_fruit = random.choice(fruits) print("随机水果:", random_fruit) # 将给定的序列随机排序 numbers = [1, 2, 3, 4, 5] random.shuffle(numbers) print("随机排序后的数字:", numbers) # 从给定的总体中选择3个不重复的元素 population = ['a', 'b', 'c', 'd', 'e'] random_sample = random.sample(population, 3) print("随机样本:", random_sample) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值