python数组包含切片索引

Sid*_*hou 2 python arrays numpy

我希望编写一个for循环来打印数组的尾部,包括整个数组(用i == 0表示)这个任务是否可能没有分支逻辑,即if i==0循环内的语句?

如果存在使用包含端索引进行切片的语法,则这是可能的.

arr=[0,1,2,3,4,5]
for i in range(0,3):
    print arr[:-i]
Run Code Online (Sandbox Code Playgroud)

输出:

[]
[0, 1, 2, 3, 4]
[0, 1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

想要输出:

[0, 1, 2, 3, 4, 5]
[0, 1, 2, 3, 4]
[0, 1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

Dan*_*iel 9

你可以使用None:

arr=[0,1,2,3,4,5]
for i in range(0,3):
    print arr[:-i or None]
Run Code Online (Sandbox Code Playgroud)


Ale*_*der 5

for i in xrange(0, 3):
    print arr[:(len(arr) - i)]
# Output
# [0, 1, 2, 3, 4, 5]
# [0, 1, 2, 3, 4]
# [0, 1, 2, 3]
Run Code Online (Sandbox Code Playgroud)