我是靠谱客的博主 能干乌龟,最近开发中收集的这篇文章主要介绍生成N个0~1的随机数,同时这些随机数的和为1,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

先随机生成N-1个随机0-1小数 (x1,x2,x3......), 从小到大排序。

然后对于结果数组 A:A1=x1,A2=x2-x1......以此类推直到An-1,然后An = 1 - x(n-1)。

import random
n=7
lst=[]
for i in range(n-1):
lst.append(random.random())
lst.sort()
formal=[lst[0]]
for i in range(n-2):
formal.append(lst[i+1]-lst[i])
formal.append(1-sum(formal))
print(formal,sum(formal))

 

最后

以上就是能干乌龟为你收集整理的生成N个0~1的随机数,同时这些随机数的和为1的全部内容,希望文章能够帮你解决生成N个0~1的随机数,同时这些随机数的和为1所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部