2012-04-27 30 views
0

我有以下Python代碼:爲什麼下面的代碼不會給「IndexError」?

a = [0,1,2,3,4,5] 
del(a[2:7]) 

不應該給這個 「IndexError」?如果沒有,那爲什麼?

+1

」退化切片索引處理得很好:太大的索引被替換爲字符串大小,小於下限的上限返回空字符串。「來自http://docs.python.org/tutorial/introduction.html – Ord 2012-04-27 00:58:49

回答

2

這會將列表片段從2刪除到7之前。列表片段不會拋出索引錯誤,而是如果它們超出列表的末尾,它們將返回列表的整個剩餘部分。 「

>>> a = list(range(10)) 
>>> a 
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 
>>> a [5:20] 
[5, 6, 7, 8, 9] 
相關問題