<分区>
我尝试在循环中动态访问数组,例如 array[n-i:-i]
,只要 i != 0
就可以正常工作。如果 i==0
我有 array[n:0]
,我希望输出从 n 到结尾的 array
但它什么都不返回(我猜是 None
)。
如何归档预期的行为?
标签 python python-3.x
<分区>
我尝试在循环中动态访问数组,例如 array[n-i:-i]
,只要 i != 0
就可以正常工作。如果 i==0
我有 array[n:0]
,我希望输出从 n 到结尾的 array
但它什么都不返回(我猜是 None
)。
如何归档预期的行为?
最佳答案
使用None
切片到最后; Python 然后将使用 len(array)
作为端点。当 -i
为 0
时,使用 或
回退到 None
:
array[n-i:-i or None]
数字 0 是 considered false in Python boolean contexts . or
operator short-circuits ;如果它是真值,它返回第一个操作数,否则它会评估第二个操作数并返回它。
关于python动态数组访问[:0],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31182072/