m=[[1,2,3],[4,5,6],[7,8,9]] 多维数据的列表
要求返回是 1 个列表,可以如下,也可以是 1 个新的重组的 m [1, 4, 7] [2, 5, 8] [3, 6, 9]
来试试回答吧,语言不限,注意返回的是什么哦。
线性代数
zip(*m)
线代挂科的路过
这道题和线性代数没关系啊,高中的时候的做好多类似的题,这个就像输出杨辉三角类似的
2L 调皮...
用 js 的老实人就这么写行吗? F12 console 直接就可以测试
let m = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] function ext(origin, index) { let nr = [] origin.map(a => { nr.push(a[index]) }) return nr } console.log([ext(m, 0), ext(m, 1), ext(m, 2)])
重点
list(zip(*m))
我也来个老实人的写法吧。
m = [[1,2,3], [4,5,6], [7,8,9]] _m = [] for i in range(len(m)): l = [] for i_l in m: l.append(i_l.pop(0)) _m.append(l) print(_m)
一行就厉害了。。 例行献丑。..初学。哈哈
m = [[1, 2, 3, -1], [4, 5, 6, -2], [7, 8, 9, -3]] n = [] for x in range(0, len(m[0])): a = [] for y in range(0, len(m)): a.append(m[y][x]) n.append(a) print(n)
这个题目的确疏忽了,有 zip 的这个玩意、、、
m=[[1,2,3],[4,5,6],[7,8,9]] #取出来是1个list for c in range(len(m)): col =[row[c] for row in m] print(col)
我是这样写的。
初学 python 老实人写法,要求返回是 1 个列表
[list(i) for i in zip(*m)]