【问题标题】:What is a good way to implement a function to make an array with inputted arguments? [closed]什么是实现函数以创建具有输入参数的数组的好方法? [关闭]
【发布时间】:2022-01-01 18:05:25
【问题描述】:

我想创建一个函数,它接受任意数量的参数并使用这些参数作为参数返回一个数组。这是代码示例 - 我想做这样的事情,但它应该可以工作:

import numpy as np

def getgoodarray(*args):
    goodarray = np.round(np.arange(args)*10)
    return goodarray

B = getgoodarray(2, 3)  # this should make a 2d array, with two 1dimensional arrays, each of 3 elements

您对如何正确实现此功能有任何想法吗?

【问题讨论】:

  • 请澄清你的例子。为什么 np.arange 会输出一个 2x3 数组?
  • 欢迎来到 SO。请提供更多详细信息并提供您想要的输入和输出示例。这个写的不是很清楚。
  • 它有什么价值?零,一,随机?
  • 错误是什么?如果它出现在 np.arange 中,你查过它的文档吗?或者你还做了什么来调试这个——除了跑向我们求救? :)
  • args 是一个元组,例如(2,3)arange 想要 2 个(或 3 个)数字,而不是一个元组。 arange 也制作一维数组。它确实应该说清楚。听起来您在没有阅读太多介绍材料的情况下就开始使用numpy

标签: python arrays numpy


【解决方案1】:

使用任何构建数组的方法,用零、一或随机填充

def getgoodarray(*args):
    return np.ones(args)
    # return np.zeros(args)
    # return np.random.randint(0, 10, args)
x = getgoodarray(2, 3)
[[7 7 1]
 [8 2 5]]
x = getgoodarray(2, 2, 2, 3)
[[[[6 8 3]
   [7 0 0]]

  [[5 8 9]
   [6 8 5]]]


 [[[6 0 5]
   [8 7 0]]

  [[3 4 3]
   [0 2 4]]]]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-10
    • 2021-05-30
    相关资源
    最近更新 更多