【问题标题】:how to create a function in python that gives elements of an array?如何在python中创建一个提供数组元素的函数?
【发布时间】:2019-11-16 16:39:30
【问题描述】:

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

我尝试了以下方法:

def a(t):
    return a[t]

【问题讨论】:

  • 这里有个提示:a是你的数组名,还是你的函数名?
  • 我的python 版本无法理解您的示例数据:a=array([[10, 2, 13, 55]])
  • 我不明白你的问题。您只需通过a[0][t] 访问您的阵列
  • 从 numpy 导入数组
  • 好的,编辑标签以包含numpy

标签: python arrays function numpy


【解决方案1】:

这个函数只有在你有 [[...]] 形状的数组时才有效,否则你必须改变 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】:

    你可以这样做:

    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
    

    【讨论】:

      【解决方案3】:

      您的示例是二维数组,因此您需要 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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-10-25
        • 1970-01-01
        • 2023-03-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多