簡體   English   中英

如何在Python中生成特定的隨機數?

[英]How to generate specific random numbers in Python?

我需要使用Python生成特定隨機數列表的幫助。

我知道如何生成這樣的隨機數列表

import random
number = random.sample(xrange(1,10), 3)

這將生成1到10之間的3個隨機數。(示例)

[7, 6, 1]

我要實現的是生成具有重復值的像這樣的隨機數列表(示例)

[10000, 30000, 20000, 60000, 100, 3000, 3000, 100, ...]

但是像這樣使用上面的腳本

import random
number = random.sample(xrange(10000,100000), 4)

產生以下結果(示例)

[12489, 43177, 51867, 68831]

有可能做我想在這里實現的目標嗎? 謝謝你的回答。

看起來像您的例子

import random
n1 = random.sample(xrange(1,10), 4)
n2 = random.sample(xrange(2,6), 4)
numbers = [n1i * 10**n2i for n1i, n2i in zip(n1, n2)]

樣本輸出:

[800000, 7000, 200, 30000]

如果要重復:

random.choices(numbers, k=6)

樣本輸出:

[800000, 7000, 800000, 800000, 7000, 200]

您是否正在尋找四舍五入的隨機數?

import random
numbers = [1000*x for x in random.sample(xrange(1,100), 4)]

嘗試這個:

import numpy as np
array1 = np.random.randint(8, size=10)
array2 = np.random.randint(6, size=10)
array3 = (np.power(10, array2)) * array1

數組“ array1”,“ array2”和“ array3”是(示例):

array1 = [2 3 6 7 5 1 1 5 5 7]
array2 = [2 4 1 3 4 5 2 2 4 2]
array3 = [200 30000 60 7000 50000 100000 100 500 50000 700]

array3是您想要的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM