亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

倒序切片求詳解

>>> 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

正在回答

4 回答

?[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]


6 回復 有任何疑惑可以回復我~

我覺得計算機語言一般也都遵循左閉右開的原則,就是包含起始值,不包含結束值[。。。)醬紫

0 回復 有任何疑惑可以回復我~

倒序來的話,倒數第一個就是‘-1’啦,不存在0。如-1 就是'Paul’

而0只是在正序的第一個開始進行的,如0就是‘Adam'

在切片運算中,遵循原則是‘左閉右開’的原則,既‘:'左邊包含,右邊不包含。

0 回復 有任何疑惑可以回復我~
#1

iamrookie 提問者

懂了,比如-4:2它就是Adam,Bart是這樣吧
2018-05-06 回復 有任何疑惑可以回復我~
#2

iamrookie 提問者

如果按照這樣-4:-2那么 -4:-1:2是不是一樣, 然后比如有10name,每兩個取一個1:3:2是不是取2,4,6,8
2018-05-06 回復 有任何疑惑可以回復我~

-1是'Paul',因為沒有-0啊,-0還是0,也就是'Adam'

0 回復 有任何疑惑可以回復我~
#1

iamrookie 提問者

那么-4:-2是不是一樣呢
2018-05-06 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
初識Python
  • 參與學習       758396    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

倒序切片求詳解

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號