random库基本使用

概述:random库是使用随机数的python标准库,主要用来生成随机数

伪随机数:采用梅森旋转算法生成的伪随机序列中的元素

使用:import random

基本随机函数:seed()  random()

扩展随机函数:randint()  getrandbits()  uniform()  randrange()  choice()  shuffle()

详解:

基本随机函数

seed() 初始化给定的随机数种子,默认为当前系统时间 

>>> random.seed(10)

random() 生成一个[0.0, 1.0)之间的随机小数

>>> random.random()
0.5714025946899135
>>> random.random()
0.4288890546751146


>>> random.seed(10)
>>> random.random()
0.5714025946899135
>>> random.random()
0.4288890546751146

 

 

扩展随机函数

randint(a,b) 生成一个[a, b]之间的整数

>>> random.randint(10,100)
83

 

uniform(a,b) 

生成一个[a, b]之间的随机小数

>>> random.uniform(1,10)
4.195735189575358

 

randrange(m,n[,k])  生成一个[m, n)之间以k为步长的随机整数

>>> random.randrange(1,151,3)
1
>>> random.randrange(1,151,3)
40

 

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

>>> random.getrandbits(16)
32197

 

choice(seq) 从序列seq中随机选择一个元素

>>> random.choice('!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~')
'_'

 

shuffle(seq) 将序列seq中元素随机排列,返回打乱后的序列

>>> s = [1,2,3,4,5,6,7,8,9,0]
>>> random.shuffle(s)
>>> print(s)
[4, 7, 1, 9, 3, 6, 2, 8, 0, 5]

 

转载于:https://www.cnblogs.com/lisi01/p/10051905.html

### Python `random` 基本使用教程 #### 导入 为了在 Python 中利用 `random` 的功能,仅需导入该即可。由于这是 Python 的标准之一,因此无需额外安装。 ```python import random ``` #### 设置种子 通过调用 `seed()` 函数可以初始化随机数生成器的种子。如果未提供参数,则默认使用当前系统时间作为种子值[^2]。 ```python random.seed(10) # 使用整数值设置种子 print(random.random()) random.seed() # 不带参数,默认采用系统时间为种子 print(random.random()) ``` #### 获取 [0, 1) 区间内的浮点型随机数 借助于 `random()` 方法能够返回位于 `[0, 1)` 半开区间的下一个随机浮点数,即包括最小可能值 0 排除最大可能值 1[^3]。 ```python print(random.random()) ``` #### 整数范围内的随机选取 对于从特定范围内挑选随机整数的需求,可选用如下几种方法: - **randint(a, b)**: 返回 a 和 b (均含边界)之间的任意一个整数。 - **randrange(start, stop[, step])**: 类似 randint 但是支持指定步长,并且不包含上界 stop。 ```python print(random.randint(1, 5)) # 输出介于 1 到 5 之间的一个随机整数 print(random.randrange(0, 10, 2)) # 只会输出偶数,在此例中是从集合 {0, 2, 4, 6, 8} 随机选一 ``` #### 序列中的随机选择 当面对列表或其他序列类型的对象时,可以通过下面的方法来实现元素的选择操作: - **choice(seq)**: 从非空序列 seq 中随机抽取单个元素。 - **choices(population, weights=None, *, cum_weights=None, k=1)**: 支持加权抽样的多元素采样方式;weights 或者 cum_weights 参数用来定义各选项被选中的概率分布情况。 ```python my_list = ['apple', 'banana', 'cherry'] print(random.choice(my_list)) print(random.choices(my_list, weights=[1, 5, 2], k=10)) ``` #### 打乱顺序 要打乱给定列表里所有项目的排列次序,应该运用 shuffle 函数。这会对原列表做就地修改而不是创建新的副本。 ```python original_list = [1, 2, 3, 4, 5] random.shuffle(original_list) print(original_list) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值