【发布时间】:2018-04-19 10:54:23
【问题描述】:
只是我想要实现的一个最小示例。
我有一个数组:
array = [1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,....,1,2,3,4,5,6,7,8,9,10]
我想遍历这个数组并创建一个如下所示的新数组:
new_array = [1,1,2,1,2,3,1,2,3,4,1,2,3,4,5,....,1,2,3,4,5,6,7,8,9,10]
即遍历数组a,得到第一个值(即1),然后跳过remaining 9值,然后得到第一个和第二个值(即1,2),然后跳过remaining 8 值,依此类推。
我想出的想法是创建indices 并按以下方式使用它:
In [1]: indices = np.arange(1,10,1)
Out[1]: array([1, 2, 3, 4, 5, 6, 7, 8, 9])
new_array = []
for i in array:
for a,b in zip(indices,range(10)):
new_array.append(i[0:a]) # here I am including i[0:1], i[0:2] and so on
所以它循环遍历array 并获取第一个值,然后跳过剩余的 9 个值,然后获取前两个值并跳过剩余的 8 个值,依此类推。
但这似乎不起作用。我怎样才能做到这一点?
【问题讨论】:
-
你能举个具体的例子吗
-
您的问题有歧义,例如当我在跳过的第一部分或第二部分到达数组末尾时会发生什么。
-
以上是最简单的例子。我想从
array得到new_array。我相信我已经解释了array和new_array之间的区别 -
@shivam: nanbaa,跳过 pannanum nanbaa,第一个值,adhukku aprom 前两个等。当数组结束时,我们停止。
-
当内部获取所有索引低于外部的项目时,您可以使用范围为 10 的两个 for 循环轻松完成此操作。有关详细信息,请参阅我的答案。
标签: python arrays for-loop indexing indices