Python中的randint()方法

时间:2020-02-23 14:43:43  来源:igfitidea点击:

介绍

在本教程中,我们将重点介绍Python中的randint()方法。

我们需要先在Python中导入random模块,然后才能开始使用randint()方法。
该模块实质上会创建伪随机性。

randint()方法语法

基本上,Python中的" randint()"方法返回作为两个参数提供的两个较低和较高限制(包括两个限制)之间的随机整数值。

应当注意,该方法仅能够生成整数型随机值。
看一下语法,以便我们可以进一步合并该方法。

#randint() Syntax
randint(lower limit , upper limit)

其中

  • 下限是生成随机整数的起点(包括该起点),
  • uppwer limit是该方法将返回随机整数的停止点。

上面的示例返回整数N,其中N> = beg和N <= end。

它的工作方式与randrange(beg,end)相同,因此是相同的别名。

randint()方法示例

让我们看下面的给定代码,它说明了randint()方法的使用和工作。

import random
beg=10
end=100
random_integer = random.randint(beg, end)
print("The random integer is :", random_integer)

显然,我们可以看到randint()方法生成了一个在1到100范围内的随机整数值。

这个值是随机的吗?当我们多次调用该方法时会发生什么?它返回相同的值吗?

多个randint()方法调用

下面的代码片段回答了所有上述问题,使我们有了清晰的认识。

import random
beg=10
end=100
for i in range(5):
  print(random.randint(beg, end))

对于上面的代码,重复执行random.randint()方法会为我们在10到100范围内的每个调用提供不同的随机整数。

因此,我们可以推断出每个调用的值都是随机的,在我们的情况下不重叠。
此外,当呼叫数量大且范围很小时,在这种情况下,生成的随机值可能会冲突或者重叠。

如前所述,必须确保上限和下限参数必须是整数类型。
对于其他类型,我们得到一个ValueError,如下所示。

import random
beg=5.3
end=10.2
print(random.randint(beg, end))

输出:

Traceback (most recent call last):
File "C:/Users/sneha/Desktop/test.py", line 4, in <module>
  print(random.randint(beg, end))
File "C:\Users\sneha\AppData\Local\Programs\Python\Python37-32\lib\random.py", line 222, in randint
  return self.randrange(a, b+1)
File "C:\Users\sneha\AppData\Local\Programs\Python\Python37-32\lib\random.py", line 186, in randrange
  raise ValueError("non-integer arg 1 for randrange()")
ValueError: non-integer arg 1 for randrange()

Process finished with exit code 1