轉自:http://www.cnblogs.com/dyllove98/archive/2013/07/20/3202785.html
list的下表從零開始,和C語言挺類似的,但是增加了負下標的使用。
-len-----第一個元素
...... ......
-2 ------ 倒數第二個元素
-1 ------ 最后一個元素
0 ------ 第一個元素
len-1 ------ 最后一個元素
>>> a=[0,1,2,3,4,5,6,7] >>> a [0, 1, 2, 3, 4, 5, 6, 7] >>> i = -len(a) >>> i -8 >>> while i < len(a): print "a[",i,"]=",a[i] SyntaxError: invalid syntax >>> while i < len(a): "a[" , i , "]=" , a[i] i += 1 ('a[', -8, ']=', 0) ('a[', -7, ']=', 1) ('a[', -6, ']=', 2) ('a[', -5, ']=', 3) ('a[', -4, ']=', 4) ('a[', -3, ']=', 5) ('a[', -2, ']=', 6) ('a[', -1, ']=', 7) ('a[', 0, ']=', 0) ('a[', 1, ']=', 1) ('a[', 2, ']=', 2) ('a[', 3, ']=', 3) ('a[', 4, ']=', 4) ('a[', 5, ']=', 5) ('a[', 6, ']=', 6) ('a[', 7, ']=', 7)
子list的提取:
可通過下標指定范圍,用於提取出一個list的一部分。下標表明位置,一個是起始位置,一個是結束位置,中間使用冒號分割,如果不指定起始位置,則默認從 0開始,如果不指定結束位置,結束位置為-1,子list表示包括起始位置處的元素,一直到結束位置,單數不包括結束位置的元素。負下標也可以參與下標的 表示:
>>> a [0, 1, 2, 3, 4, 5, 6, 7] >>> b = a[1:4] >>> b [1, 2, 3] >>> b = a[1:-1] >>> b [1, 2, 3, 4, 5, 6] >>> b = a[1:] >>> b [1, 2, 3, 4, 5, 6, 7] >>> b = a[:] >>> b [0, 1, 2, 3, 4, 5, 6, 7] >>>
改變新的子list的值,不會改變原來list的值