python如何实现n维数据的遍历处理?
举个例子,如果要处理一个数组中的每一个数据,可以用一层循环语句实现,我们姑且称这样的数组为一维的。循环次数为数组的长度a二维数组就是在一个二维的表格(可以想象一个a*b的长方形)中的数据,可以用2层循环语句实现。循环的总次数为数组的a*b
同理,n维的数据则需要n层循环语句。
在n可变或者n很大的情况下,python中存不存在一种语句能够实现n维数据的遍历处理? 或者说有没有一种语句能够实现n层循环 mdphd 发表于 2020-3-23 21:24
或者说有没有一种语句能够实现n层循环
for 循环?
for i in range(n) 递归吧,for已经无法满足了 比如 n维数据 要使用n层循环 计算机可以实现 你写的过来吗?
还是建议 采用递归方式 递归不是有上限吗 TJBEST 发表于 2020-3-23 21:41
递归吧,for已经无法满足了 比如 n维数据 要使用n层循环 计算机可以实现 你写的过来吗?
还是建议 采用递 ...
这就是我想问的
还有,递归不是有上限吗 mdphd 发表于 2020-3-23 21:50
递归不是有上限吗
>>> import sys
>>> sys.setrecursionlimit(10000000) mdphd 发表于 2020-3-23 21:53
这就是我想问的
还有,递归不是有上限吗
一般也不会这么多层啊,没有意义的设计。既然面型对象了,最好还是用属性之类的表示,赋予其意义
再说储存数据 一般用json xml等 我觉得Python对n维数组的支持已经很爽了,遍历起来很容易啊
>>> a=
>>> b=
>>> b
[, , , ]
>>> c=
>>> c
[[, , , ], [, , , ], [, , , ]]
>>> d=
>>> d
[[[, , , ], [, , , ], [, , , ]], [[, , , ], [, , , ], [, , , ]]]
for eachd in d:
for eachc in eachd:
for eachb in eachc:
for eacha in eachb:
print(eacha) 使用 numpy 处理数组会好些
页:
[1]