【问题标题】:Numpy function argument confussion list or tupleNumpy 函数参数混淆列表或元组
【发布时间】:2021-12-06 22:58:24
【问题描述】:

我是 numpy 的新手,我一直在传递参数时感到困惑,有时是它的列表,有时是元组,就像这样 https://numpy.org/doc/stable/reference/generated/numpy.vstack.html

numpy.vstack(tup)

doc 说它需要元组,但如果我通过 list 它也可以工作

np.vstack((c1, c2))
array([[1, 1],
       [2, 2],
       [3, 3],
       [4, 4]])

并列出相同的输出

np.vstack([c1, c2])
array([[1, 1],
       [2, 2],
       [3, 3],
       [4, 4]])

【问题讨论】:

  • 有什么问题?它说参数的名称是 tup,但类型是数组序列。元组和列表都是序列。
  • 文档实际上说的是“ndarrays 序列”。这是一个通用术语,包括元组、列表,甚至数组。列表和元组通常同样有效。 numpy 有几种情况,它会以不同的方式对待它们,特别是在索引时,以及一种对结构化数组的输入。但这些是例外。

标签: python list numpy tuples


【解决方案1】:

正如@hpaulj 所说,输入参数只是命名为tup,但tup 必须是np.arrays 的序列

序列可以是元组、数组、pandas.Series 等。

如果它必须是 only 一个元组,它会在文档中这样说明,即“tup: tuple”而不是“tup: sequence”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-03
    • 2022-12-21
    • 2021-06-23
    • 2013-03-20
    相关资源
    最近更新 更多