如何产生随机数,求解答

如何产生随机数,求解答,感谢,感谢,(,。/;‘12345678【】)

img

img

一、python自带的random库

1.产生0到1之间的浮点数: random.random()
2.产生n---m之间的浮点数: random.uniform(1.1,5.4)
3.产生从n---m间隔为k的整数: random.randrange(n,m,k)
4.从序列中随机选取一个元素: random.choice([1, 2, 3, 4, 5, 6, 7, 8, 9, 0])
5.在一些特殊的情况下可能对序列进行一次打乱操作: random.shuffle([1,3,5,6,7])

1
2
3
4
5

二、numpy模块生成随机数

import numpy as np
1.产生n维的正态分布的随机数: np.random.randn(d1,d2,d3,...,dn)
2.产生n--m之间的k个整数:np.random.randint(n,m,k)
3.产生n个0--1之间的随机数: np.random.random(10)
4.从序列中选择数据: np.random.choice([2,5,7,8,9,11,3])
5.把序列中的数据打乱:np.random.shuffle(item)

1
2
3
4
5
6

三、精度

1.python生成2位小数点的随机数

import random
#生成随机数,浮点类型
a = random.uniform(10, 20)
#控制随机数的精度round(数值,精度)
print round(a, 2)

img


import random

m, n, k = map(int, input().split())
random.seed(n)
for i in range(m):
    r = random.randint(1 * 10 ** (k - 1), 1 * 10 ** k)
    print(r)
    random.seed(r)

先import random
然后调用random.randint就行了,代码都已经给你了

import random

m, n, k = map(int, input().split())
random.seed(n)
for i in range(m):
    r = random.randint(1 * 10 ** (k - 1), 1 * 10 ** k)
    print(r)
    random.seed(r)

有帮助的话,请点采纳~


import random

m, n, k = input().split()

random.seed(int(n))

for i in range(int(m)):
    r = random.randint(10**(int(k)-1), 10**int(k)-1)
    print(r)
    random.seed(r)
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632