如何在python中创建一个提供数组元素的函数?

时间:2019-07-06 10:41:51

标签: python arrays function numpy

我有一个数组。假设a = array([[10,2,13,55]]) 我想创建一个函数,为t = 0提供第一个元素,为t = 1提供第二个元素...

我尝试了以下方法:

{{1}}

3 个答案:

答案 0 :(得分:1)

您可以这样:

a=array([[10, 2, 13, 55]]) 

def get_value(t):
    return a[t]

get_value(0) #results [10, 2, 13, 55]

由于您的示例数据是2D,如果我们要访问它们中的每个,我们必须传递2个数字作为索引。

a=array([[10, 2, 13, 55]]) 

def get_value(t1,t2):
    return a[t1][t2]

get_value(0, 1) #results 2

答案 1 :(得分:0)

仅当您具有[[...]]形状的数组时,此函数才有效,否则,您必须更改level参数。

from numpy import array
a=array([[10, 2, 13, 55]])
def matrix_reader(a,t,level=0):
    return a[level][t]
matrix_reader(a,1)

答案 2 :(得分:0)

您的示例是2D数组,因此您需要2个参数以返回所需的正确数字。 示例:对于数组a=array([[10, 2, 13, 55]])a[0,0]返回10,a[0,1]返回2。

我建议您创建一维数组,将数组放入函数中,并命名与数组不同的函数

from numpy import array
temp=array([10, 2, 13, 55])
def a(arr,t):
    return arr[t]
print(a(temp, 2))

示例返回13