从最后一个元素开始获取数组的索引

时间:2012-02-20 09:54:12

标签: python

我是如何使用以下代码进行反向迭代的?我应该使用reduce功能吗?

示例:

for i in range(4):
    print i ////0 1 2 3

如何以相反的顺序打印相同的内容

3 2 1 0

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

我还想使用索引反向打印上面的数组而不是a[::-1] 即,我想先打印

 a[4] //get index starting from last how to achieve this
 a[3]
 a[2]
 a[1]
 a[0]

6 个答案:

答案 0 :(得分:5)

使用reversed功能:

for i in reversed(range(4)):
    print i

打印:

3
2
1
0

a=[5,2,1,4,3]
for i in reversed(a):
    print i

打印

3
4
1
2
5

答案 1 :(得分:1)

一种方法涉及在迭代之前反转列表。虽然这种技术浪费了计算机周期,内存和代码行:

rseqn = list(seqn)
rseqn.reverse()
for value in rseqn:
    print value

答案 2 :(得分:0)

您可以使用列表的反向功能。

>>> a = [1,2,3,4]
>>> a.reverse()
>>> a
[4, 3, 2, 1]

使用eumiro的答案进行一次反向(即如果你只需要一次)。 否则使用我的方法,因为转换是在列表本身完成的。

答案 3 :(得分:0)

这有效:

range(4, -1, -1)
// [4, 3, 2, 1, 0]

答案 4 :(得分:0)

>>> for i in reversed(range(4)):
...   print(i)
...
3
2
1
0

答案 5 :(得分:0)

len()返回列表的长度。因此,您可以使用len(a)-1获取列表a的最后一个索引。