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)
你可以使用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)
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)