如何在Python中生成0到9之间的随机整数?
在本文中,我们将向您展示如何在Python中生成0到9之间的随机整数。以下是完成此任务的各种方法。
使用randint()方法
使用randrange()方法
使用secrets模块
为了生成特定范围内的随机整数,Python支持多种函数。我们将讨论Python的内置random模块,用于生成随机数。
random模块提供的两个主要函数用于生成随机整数是randint()和randrange()。为了生成随机值,还使用另一个名为secrets的模块。
使用randint()方法
random.randint()方法用于返回指定范围内的随机整数。
注意
randint()方法不能使用浮点数。如果输入非整数的值,则会引发ValueError: non-integer arg 1错误。
算法(步骤)
以下是执行所需任务的算法/步骤。
使用import关键字导入random模块。
使用random模块的randint()函数生成0到9之间的随机整数。
打印生成的0到9之间的随机整数。
示例
以下程序使用random.randint()方法生成0到9之间的随机整数:
# importing random module import random # generating a random integer between 0 and 9 without using a loop randomNumber = random.randint(0, 9) # printing the random integer between 0 and 9 print("The generated random integer between 0 and 9 = ", randomNumber)
输出
执行上述程序后,将生成以下输出:
The generated random integer between 0 and 9 = 4
使用for循环和randint()生成0到9之间的一些随机数
算法(步骤)
以下是执行所需任务的算法/步骤。
使用import关键字导入random模块。
使用for循环遍历使用range()函数指定的范围(返回一个从0开始,步长为1(默认)递增,并在到达给定数字之前停止的数字序列)。这里我们循环5次。
使用random模块的randint()函数生成0到9之间的随机整数。
打印生成的5个0到9之间的随机整数。
示例
以下程序使用random.randint()方法和for循环生成一些0到9之间的随机整数:
# importing random module import random print("The 5 generated random integers between 0 and 9 using for loop: ") # traversing in the range from 0 to 5(excluded) # (running the loop 5 times) for i in range(5): # generating a random integer between 0 and 9 randomNumber = random.randint(0, 9) # printing the generated random integer print(randomNumber)
输出
执行上述程序后,将生成以下输出:
The 5 generated random integers between 0 and 9 using for loop: 7 2 4 8 5
使用randrange()方法
random.randrange()方法用于返回指定范围内的随机整数。
语法
random.randrange(start, stop, step)
参数
start(可选) - 表示起始位置的整数。默认为0。
stop(必填) - 表示结束位置的整数
step(可选) - 表示增量的整数。默认为1。
算法(步骤)
以下是执行所需任务的算法/步骤。
使用import关键字导入random模块。
通过仅传递stop参数,使用random模块的randrange()函数生成0到9之间的随机整数。
打印生成的0到9之间的随机整数。
示例
以下程序使用random.randrange()方法生成一个0到9之间的随机整数:
# importing random module import random # generating a random integer between 0 and 9 without using loop # we are only passing the stop value here randomNumber = random.randrange(9) # printing the random integer between 0 and 9 print("The generated random integer between 0 and 9 = ", randomNumber)
输出
执行上述程序后,将生成以下输出:
The generated random integer between 0 and 9 = 2
使用for循环和randrange()生成0到9之间的一些随机数
示例
以下程序使用random.randrange()方法和for循环生成一些0到9之间的随机整数:
# importing random module import random print("The 5 generated random integers between 0 and 9 using for loop: ") # traversing in the range from 0 to 5(excuded) # (running the loop 5 times) for i in range(5): # generating random integer between 0 and 9 # we are passing the start, stop parameters here randomNumber = random.randrange(0, 9) # printing the generated random integer print(randomNumber)
输出
执行上述程序后,将生成以下输出:
The 5 generated random integers between 0 and 9 using for loop: 6 1 7 2 2
使用secrets模块
为了生成随机整数,我们可以使用secrets模块中的randbelow()函数。它生成具有高密码安全性的随机数。
在Python 3.6中,secrets模块是一个新的模块。对于涉及安全或密码学的用途,这比random模块更可取。
示例
以下程序使用randbelow()函数和for循环生成5个0到9之间的随机整数:
# importing randbelow function from secrets module from secrets import randbelow # traversing in the range from 0 to 5(excluded) using for loop # (running the loop 5 times) for i in range(5): # generating a random integer between 0 and 9 using randbelow() function print(randbelow(9))
输出
执行上述程序后,将生成以下输出:
0 5 4 4 8
结论
我们学习了两种不同的模块,用于生成0到9之间的随机整数。为了生成0到9之间的随机整数,我们使用了Python的random模块中的两个函数randint()和randrange()。我们还研究了在Python 3.x中引入的新secrets模块。我们还讨论了这些函数在有和没有循环的情况下的使用方法。