【问题标题】:AttributeError: 'list' object has no attribute 'numpy'AttributeError:“列表”对象没有属性“numpy”
【发布时间】:2022-01-23 09:47:00
【问题描述】:

我正在尝试使用以下代码将列表转换为数组:

[t.numpy() for t in super_final_predictions]

但是,发生意外错误

AttributeError: 'list' 对象没有属性 'numpy'

如果有人能帮助我,那就太好了。

【问题讨论】:

  • 什么是super_final_predictions

标签: python list numpy


【解决方案1】:

如果您只是想将列表 t 转换为数组,您可以说 t_array = np.array(t)

【讨论】:

    【解决方案2】:

    要将列表转换为 Numpy 数组,您应该使用以下语法

    [numpy.array(t) for t in super_final_predictions]
    

    请注意,我给出的这个答案假设 super_final_predictions 包含多个列表,并且您想要的输出是一个 numpy 数组列表。

    如果您想将整个 super_final_predictions 列表转换为 n 维 numpy 数组,您应该使用

    numpy.array(super_final_predictions)
    

    此外,在创建数组时指定数据类型,因为它可能对您的用例很重要。 例如:

    numpy.array(super_final_predictions , dtype = np.uint8)
    

    【讨论】:

      【解决方案3】:

      试试:

      [np.array(t) for t in super_final_predictions]
      

      或者简单地说:

      np.array(super_final_predictions)
      

      第二个代码会将整个嵌套列表转换为一个数组,这应该是你想要的。

      【讨论】:

      • 感谢您的回复,但是,不幸发生了意外错误:link
      【解决方案4】:

      尝试这种方式将列表转换为numpy数组

      import numpy as np
      
      l = [1,2,3,4,5]
      arr = np.array(l)
      

      【讨论】:

        猜你喜欢
        • 2021-01-19
        • 2021-07-05
        • 2019-02-20
        • 2013-09-04
        • 2018-01-16
        • 2016-05-14
        相关资源
        最近更新 更多