Python 如何生成随机数?


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

在本文中,我们将向您展示如何使用不同的方法在 python 中生成随机数:

  • 使用 random.seed() 方法

  • 使用 random.randrange() 方法

  • 使用 random.randint() 方法

  • 使用 random.random()

  • 使用 random.choice() 方法

  • 使用 random.uniform() 方法

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

随机数生成器使用 seed() 方法初始化。

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

注意 - 随机数生成器默认使用当前系统时间。

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

如果两次使用相同的种子值,您将获得相同的随机数。

语法

random.seed(x, version)

参数

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

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

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

import random # Setting the seed value to 5 random.seed(5) print(random.random()) # Setting the same seed value as above i.e 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 # generating a random number between 10(included) and 20(not included) print("Random Number Generated = ", random.randrange(10, 20))

输出

执行上述程序将生成以下输出:

Random Number Generated = 13

此处使用 randrange() 函数从一个范围内生成一个随机数。我们传递了起始值(下限)和结束值(上限)作为参数,它生成了这两个范围之间的随机数

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

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

注意 - randint() 方法是 randrange(start, stop+1) 的别名。

语法

random.randint(start, stop)

参数

start(必填) - 一个整数,指示起始位置。

stop(必填) - 一个整数,指示结束位置。

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

import random # generating a random number between 10 and 20(both 10 and 20 numbers included) print("Random Number Generated = ", random.randint(10, 20))

输出

执行上述程序将生成以下输出:

Random Number Generated = 20  

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

方法 4:使用 random.random()

random() 方法生成 0 到 1 之间的随机浮点数。

语法

random.random()

参数

此 random() 方法不接受任何参数

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

import random # generating a random floating-point number between 0 and 1 print("Random Number Generated = ", random.random())

输出

Random Number Generated = 0.15685132230226662

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

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

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

以下程序返回列表中的随机数:

import random #Input list given_List = [ 1, 6, 3, 9, 10, 24, 475, 483, 2656] print('The first Random Element from the list:',random.choice(given_List)) print('The Second Random Element from the list:',random.choice(given_List))

输出

The first Random Element from the list: 6
The Second Random Element from the list: 24

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

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

语法

random.uniform(x, y)

参数

x(必填) - 表示最低可能结果的数字

y(必填) - 表示最高可能结果的数字

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

import random # generating a random number between 10 and 20(both 10 and 20 are also included) print("Random Number Generated = ", random.uniform(10, 20))

输出

Random Number Generated = 12.845596876772472

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

结论

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

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

更新于:2022-09-19

527 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告
© . All rights reserved.