numpy —— 随机数 (抽卡是不是这样随机的??)你以为你会中奖吗!

如果想要一个元素不相同的列表我们要如何做?手打?太傻了!当然用随机数了!

随机数
r2 = np.random.rand(2,3)
生成一个两行三列的随机数组
[[0.88708176 0.13370695 0.19753716]
 [0.36851851 0.76013292 0.87091384]]

我们可以适当的调整一下随机数的分布,只需要在rand后面加上n
正态分布 中间大两边小
r3 = np.random.randn(3,2)
[[ 0.15901744  0.64586782]
 [-1.88507653  1.03553841]
 [-1.98657573 -0.2692635 ]]

如果你不想要从-22的随机数,而是整数,并且是你指定的范围大小你要如何?
r4 = np.random.randint(1,10,[2,3])
前两个是随机数范围,后面的是生成的形式
[[8 2 7]
 [3 6 3]]

当然你想搞一个简单的随机数,不要什么花里胡哨的那就这样:
r5 = np.random.random([2,3])
[[0.1132577  0.17827134 0.26219072]
 [0.57738214 0.49881814 0.49624455]]


下面有一个很有意思的方法让你可以确定随机数出现的概率,万恶的抽卡。
其属性如下:
np,random.choice(a,size = None , replace = True ,p=None)

    a , 如果 a 是数字就会变成 np.arange
    size 决定输出形状 [2,2] 二行二列
    replace 输出的数字是否可以重复
    p 决定取值概率

下面举个栗子:
r7 = np.random.choice(list('abcde'),
size=[2,2],replace=True,p=[0.10,0.30,0.50,0.05,0.05])
其中list 中的内容让你的随机数是abcde输出的结果如下
[['c' 'c']
 ['b' 'c']]

如果你用for来运行一百遍,你会发现e的概率真的很小。。。
所以抽卡需谨慎,保底才是最香的啊。。。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值