Python语法数+数组

2024-04-27 00:22:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我偶尔会遇到这种python结构:number+array 我想知道返回值是多少,是数字还是数组。它是干什么的?你知道吗

例如,我遇到的是:

 def __init__(self, n):      
  self.wins = np.zeros( n )
  self.trials = np.zeros(n )

 def sample( self, n=1 ):   
 for k in range(n):        
    choice = np.argmax( rbeta( 1 + self.wins, 1 + self.trials - self.wins) )        
    choices[ k ] = choice
return 

注意:我对Python几乎一无所知


Tags: sampleselfnumberinitdefnpzeros数字
2条回答

你的问题不是关于语法本身(加法不是什么特殊的语法方面的问题),而是关于numpy数组的加法方法。对于numpy数组对象,实现了标量的添加,因此结果是一个数组,其中所有元素都被添加到标量中。你知道吗

In [1]: import numpy as np

In [2]: a = np.arange(0, 5)

In [3]: a
Out[3]: array([0, 1, 2, 3, 4])

In [4]: 1+a
Out[4]: array([1, 2, 3, 4, 5])

建议阅读:

这不是数字+数组

它是标量+n数组。你知道吗

它将标量添加到np数组的每个元素中

相关问题 更多 >