我正在尝试将此numpy.ndarray转换为列表
[[105.53518731]
[106.45317529]
[107.37373843]
[108.00632646]
[108.56373502]
[109.28813113]
[109.75593207]
[110.57458371]
[111.47960639]]
我用这个函数来转换它
conver = conver.tolist()
输出是这样的,我不确定它是否是一个列表,如果是,我可以通过执行cover[0]访问它的元素,等等
[[105.5351873125], [106.45317529411764], [107.37373843478261], [108.00632645652173], [108.56373502040816], [109.28813113157895], [109.75593206666666], [110.57458370833334], [111.47960639393939]]
最后,在我将其转换为列表后,我尝试将列表成员乘以1.05,得到这个错误
TypeError: can't multiply sequence by non-int of type 'float'
从二维阵列开始,形状(n,1),如下所示:
tolist生成一个列表,但它包含列表;每个[]层表示一个列表。请注意,[]嵌套与数组的:
要获取编号,必须对每个列表层进行索引:
如果首先将数组转换为一维数组,则列表索引更简单:
但是,如果您的主要目标是将元素相乘,则使用数组更简单:
您可以通过以下方式访问阵列的元素:
但是如果您确实需要迭代,
tolist()
选项是很好的选择。在列表上迭代通常比在数组上迭代快。对于数组,您应该尝试使用快速的全数组方法是的,它是一个列表,您可以检查变量的类型:
要将每个元素与
1.05
相乘,请运行以下代码:您已转换为列表的列表,因此无法广播
相关问题 更多 >
编程相关推荐