具有负步和正步的扩展切片的默认值是什么

时间:2017-06-22 19:48:09

标签: python

列表切片中start和stop的默认值是什么?如果步骤是积极的还是消极的,他们会改变吗?

例如:

 a = [1,2,3,4,5,6]
 print(a[::1]) 
 >>> [1, 2, 3, 4, 5, 6]

上面的代码使得它看起来默认值为start和stop为0和len(a)。

但是如果我们使用step = -1

 a = [1,2,3,4,5,6]
 print(a[::-1]) 
 >>> [5, 4, 3, 2, 1, 0]

来自https://docs.python.org/3/tutorial/introduction.html#strings

的python文档
  

切片索引具有有用的默认值;省略的第一个索引默认为   零,省略的第二个索引默认为字符串的大小   切片。

如果是这种情况,我们应该得到一个空列表。

 a = [1,2,3,4,5,6]
 print(a[0:len(a):-1]) 
 >>> []

 a = "python"
 a[0:len(a):-1]
 >>>> ''

0 个答案:

没有答案