python – 当使用数组迭代并从中拉取元素时,为什么在列表中打印数组([])?

想看看我是否可以使用理解或数组运算符,而不是for循环.

import numpy as np

a=[[1,2],[3,4]]

b=np.array(a)

c=[[x*z for x in z] for z in b[0:1]]

print(c)

OUTPUT = [[array([1,2]),array([2,4])]]

我想要一个列表或数组= [2,12]

之后我可以将列表转换为1D数组.
它是数组中每行的第一个元素*第二个元素.

我想让它适用于任何二维数组的一般情况.

解决方法

最简单的方法是在numpy中使用 prod函数.

from numpy import prod

a = [[1,4]]
b = [prod(x) for x in a] 
print(b)

输出

[2,12]

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...