python 切片步長 python 切片步長

2021-10-13 06:15:25 字數 1258 閱讀 5278

python切片

切片:list變數[值下標:結束值下標]  什麼意思呢?

就是獲取 list中 下標從定義的位置開始獲取資料到  自定義的下標位置結束, 但是切片有個規矩就是顧頭不顧尾,

舉個例子

kl = ["oppo","vivo","iphone","levovo"]print(kl[0:1])

結果:['oppo']

如果我取list裡面的oppo,vivo 那就得結束下標多+1 : 說白了就是切片的時候顧頭不顧尾 從填寫的下標開始取值, 到結束的下標, 但是結束的下標即使填寫了也不會取到,只會取到結束下標前面的值

kl = ["oppo","vivo","iphone","levovo"]print(kl[0:2])

結果:['oppo', 'vivo']

如果我從 下標1 開始取後面的全部值

kl = ["oppo","vivo","iphone","levovo"]print(kl[0:])

結果:['oppo', 'vivo', 'iphone', 'levovo']

從起始位置下標開始取到最後全部的值,下標*:不填寫

如果我想從list中的倒數第二個資料開始取值, 取到最後面的全部的值

kl = ["oppo","vivo","iphone","levovo"]print(kl[-2:])

結果:['iphone', 'levovo']

因為 -號代表 倒數第幾個下標, 從倒數第二個開始取:取全部, 切片是從左往右取值的

我還可以這樣:

kl = ["oppo","vivo","iphone","levovo"]print(kl[:])

結果:['oppo', 'vivo', 'iphone', 'levovo']

因為:開始切片下標不填代表從0開始去全部的值,結束不填寫, 也是取全部的值

接下來就是切片步長

這個步長和range(0,10,2) 的步長是一樣的

**:kl = ["oppo","vivo","iphone","levovo"]print(kl[1::2])

結果:['vivo', 'levovo']

因為:從下標1的資料開始取值,取後面全部的值, 並且取值的時候設定了步長,取值的時候跳著取,跳2個下標

可以這樣理解:開始的時候下標是1 設定的步長是2 那麼就是, 去下標是1 的資料, 還會去 1+步長(2) =3 那麼會取下標是3 的資料,再往後就是結果3+步長(2)=5,系統會取下標是5 的資料, 在往後的話就是結果5+步長(2) =7 系統就會取下標是7的資料

python 切片步長

python切片 切片 list變數 值下標 結束值下標 什麼意思呢?就是獲取 list中 下標從定義的位置開始獲取資料到 自定義的下標位置結束,但是切片有個規矩就是顧頭不顧尾,舉個例子 kl oppo vivo iphone levovo print kl 0 1 結果 oppo 如果我取list...

Python切片關於步長問題總結

sequence left right step 1,若step為正,則表示從索引left開始取,直到索引right為止,但不包括索引right.如果left right,結果為空 如果left預設,預設為0 如果right預設,預設為len sequence l 0,1,2,3,4,5,6,7,8...

Python學習 字串切片步長為負值時

使用 m n k 根據步長對字串切片 字串 m n m缺失表示至開頭,n缺失表示至結尾 一二三四五六七 十 3 結果是 一二 字串 m n k 根據步長k對字串切片 一二三四五六七 十 1 8 2 結果是 一三五七 一二三四五六七 十 1 結果是 十九八七六五四三二一 k為正時從左向右切片,k為負值...