Python 如何生成随机数

Python如何生成随机数?

Python内置了一个用于生成随机数的包,即random模块。

在本文中,我们将向您展示如何使用不同方法在Python中生成随机数,包括 −

  • 使用random.seed()方法

  • 使用random.randrange()方法

  • 使用random.randint()方法

  • 使用random.random()

  • 使用random.choice()方法

  • 使用random.uniform()方法

更多Python相关文章,请阅读:Python 教程

方法1:使用random.seed()方法

通过seed()方法初始化随机数生成器。

要生成随机数,随机数生成器需要一个起始数值(即种子值)。

注意 − 默认情况下,随机数生成器利用当前系统时间。

要更改随机数生成器的起始数,请使用seed()方法。

如果两次使用相同的种子值,则会得到相同的随机数。

语法

random.seed(x, version)

参数

x(可选) − 生成随机数所需的种子值。如果它是整数,则直接使用;否则,必须转换为整数。

version − 指定如何将“ x ”参数转换为整数的整数。默认值为2。如果值为None,则生成器使用当前系统时间。

以下程序返回使用random.random()和seed()方法从列表中的随机元素−

import random
# 设置种子值为5
random.seed(5)
print(random.random())

# 将种子值设置为相同的5
random.seed(5)
print(random.random())

输出

在执行上述程序时,将生成以下输出 −

0.62290169489
0.62290169489

我们将种子值设置为5,然后使用random模块的random()函数生成随机值。然后,我们将种子值再次设置为5,并使用random()函数生成与之前相同的随机值。这就是seed()函数的使用方式。

方法2:使用random.randrange()方法

randrange()方法从指定的范围中随机选择一个元素并返回它。

语法

random.randrange(start, stop, step)

参数

start(可选) − 表示起始位置的整数。默认为0

stop(必填) − 表示终止位置的整数。

step(可选) − 表示增量的整数。默认为1。

以下程序返回使用randrange()函数在给定范围内的随机数−

import random

# 在10(包括)和20(不包括)之间生成随机数
print("生成的随机数 = ", random.randrange(10, 20))

输出

在执行上述程序时,将生成以下输出 −

生成的随机数 = 13

randrange()函数在这里用于从范围中生成随机数。我们将起始值(下限)和结束值(上限)作为参数传递,它生成了介于这些范围之间的随机数

方法3:使用random.randint()方法

randint()方法返回一个表示从给定范围中随机选择的元素的整数值。

注意 − **** randint()方法是randrange(start、stop+1)的别名。

语法

random.randint(start, stop)

参数

start(必需) − 表示起始位置的整数。

stop(必需) − 表示结束位置的整数。

下面的程序使用randint()函数返回给定范围内的随机数−

import random
#生成介于10和20之间的随机数(包括10和20)
print("生成的随机数 = ", random.randint(10, 20))

输出

生成的随机数 = 20  

randrange()和randint之间的区别在于,randint在范围内包含上限,而randrange()则不包含上限。我们可以向randrange()函数添加一个步长值,但无法添加到randint()函数中。

方法4:使用random.random()函数

random()函数生成介于0和1之间的随机浮点值。

语法

random.random()

参数

此random()函数不接受任何参数。

下面的程序使用random()函数返回给定范围内的随机数−

import random
#生成介于0和1之间的随机浮点数
print("生成的随机数 = ", random.random())

输出

生成的随机数 = 0.15685132230226662

方法5:使用random.choice()方法

choices()方法返回一个包含从提供的序列中随机选择的元素的列表。

序列可以是字符串、范围、列表、元组或其他任何东西。

下面的程序返回从列表中随机选择的数字−

import random

#输入列表
给定列表 = [ 1, 6, 3, 9, 10, 24, 475, 483, 2656]
print('列表中的第一个随机元素:',random.choice(给定列表))
print('列表中的第二个随机元素:',random.choice(给定列表))

输出

列表中的第一个随机元素: 6
列表中的第二个随机元素: 24

方法6:使用random.uniform()方法

uniform()方法生成两个输入值(包括这两个数字)之间的随机浮点数。

语法

random.uniform(x, y)

参数

x(必须) − 代表最小可能结果的数字

y(必须) − 代表最大可能结果的数字

以下程序使用uniform()函数返回给定范围内的随机浮点数——

import random
# 在10和20之间生成一个随机数字(包括10和20)
print("随机生成的数字 = ", random.uniform(10, 20))

输出

随机生成的数字 = 12.845596876772472

在这种情况下,uniform()函数用于从范围内生成随机浮点数。我们将起始值(下限)和结束值(上限)作为参数传递给它,并生成两个范围之间的随机浮点/十进制数。

结论

本文我们学习了如何使用六种不同的方法生成随机数字:

seed()、randrange()、randint()、choice()、random()、uniform()。我们还学习了如何使用choice()函数从列表/字符串/元组中获取随机元素。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程