如何生成具有特定位数的随机数? [英] How to generate a random number with a specific amount of digits?
本文介绍了如何生成具有特定位数的随机数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
假设我需要一个 3 位数字,所以它会是这样的:
<预><代码>>>>随机(3)563或者>>>随机(5)26748>>随机(2)56 解决方案
您可以使用 random.randint
或 random.randrange
.所以要得到一个随机的 3 位数字:
from random import randint, randrangerandint(100, 999) # randint 两端都包含randrange(100, 1000) # randrange 在停止时是独占的
* 假设您的意思是三位数,而不是最多三位数".
要使用任意数量的数字:
from random import randintdef random_with_N_digits(n):range_start = 10**(n-1)range_end = (10**n)-1返回 randint(range_start, range_end)打印 random_with_N_digits(2)打印 random_with_N_digits(3)打印 random_with_N_digits(4)
输出:
331245127
Let's say I need a 3-digit number, so it would be something like:
>>> random(3)
563
or
>>> random(5)
26748
>> random(2)
56
解决方案
You can use either of random.randint
or random.randrange
. So to get a random 3-digit number:
from random import randint, randrange
randint(100, 999) # randint is inclusive at both ends
randrange(100, 1000) # randrange is exclusive at the stop
* Assuming you really meant three digits, rather than "up to three digits".
To use an arbitrary number of digits:
from random import randint
def random_with_N_digits(n):
range_start = 10**(n-1)
range_end = (10**n)-1
return randint(range_start, range_end)
print random_with_N_digits(2)
print random_with_N_digits(3)
print random_with_N_digits(4)
Output:
33
124
5127
这篇关于如何生成具有特定位数的随机数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文