倒序切片求詳解
>>> L = ['Adam', 'Lisa', 'Bart', 'Paul']
>>> L[-2:]
['Bart', 'Paul']
>>> L[:-2]
['Adam', 'Lisa']
>>> L[-3:-1]
['Lisa', 'Bart']
>>> L[-4:-1:2]
['Adam', 'Bart']
看不懂這個-3:-1? 它-1不是Baul嗎
然后-4:-1:2?? Adam,Paul,Bart
>>> L = ['Adam', 'Lisa', 'Bart', 'Paul']
>>> L[-2:]
['Bart', 'Paul']
>>> L[:-2]
['Adam', 'Lisa']
>>> L[-3:-1]
['Lisa', 'Bart']
>>> L[-4:-1:2]
['Adam', 'Bart']
看不懂這個-3:-1? 它-1不是Baul嗎
然后-4:-1:2?? Adam,Paul,Bart
2018-05-05
舉報
2018-05-06
?[start:stop:step]即:[開始索引:結束索引:步長值]
* 開始索引:同其它語言一樣,從0開始。序列從左向右方向中,第一個值的索引為0,最后一個為-1
* 結束索引:切片操作符將取到該索引為止,不包含該索引的值。
* 步長值:默認是一個接著一個切取,如果為2,則表示進行隔一取一操作。步長值為正時表示從左向右取,如果為負,則表示從右向左取。步長值不能為0;
所謂逆序截取,就是先截取,再進行逆序.
列表['Adam', 'Lisa', 'Bart', 'Paul']
正序 ????0?????????? 1????????2????????3
逆序?? ?-4????????? -3????? -2????????-1 ?
如果-3:-1 ,則step默認為正1,得半開半閉區間為['Lisa', 'Bart', 'Paul')得結果['Lisa', 'Bart']
如果是-4:-1,則相當于0:3,得半開半閉區間為['Adam', 'Lisa', 'Bart', 'Paul')即['Adam', 'Lisa', 'Bart']
若step=2則得['Adam', 'Bart']
l =list(range(10))得0到9的列表,1:3的得[1,2,3)即[1,2],1:3:2 得[1]
2018-06-24
我覺得計算機語言一般也都遵循左閉右開的原則,就是包含起始值,不包含結束值[。。。)醬紫
2018-05-05
倒序來的話,倒數第一個就是‘-1’啦,不存在0。如-1 就是'Paul’
而0只是在正序的第一個開始進行的,如0就是‘Adam'
在切片運算中,遵循原則是‘左閉右開’的原則,既‘:'左邊包含,右邊不包含。
2018-05-05
-1是'Paul',因為沒有-0啊,-0還是0,也就是'Adam'