python切片逆序 python 中倒序切片

2021-10-11 05:11:19 字數 1807 閱讀 9148

樓主問的是列表,及python中所有可迭代型別型別的 切片問題, 由於我電腦上裝的是python 3.x, 在 range() 這個內建函式上和淚珠的2.x 有些許差別:2.x: range(start : stop : step) 生成 乙個 從start開始(包含start)到stop結束(不包含stop),步長為 step 的列表(下稱:list型別)

3.x range(start : stop : step) 生成乙個 序列生成器(range 型別),在這裡,range自成一種型別了, 不過 start, stop, step 的意義是一樣的。

以上是兩個版本python的區別,扯開一句,python 3.x 和2.x 的不相容在前幾年3.x 剛推出是 短時間內看對python語言是一種傷害, 一種**。 但是站在2016的開端來看,各種常用的庫都已經支援了3.x, 且3.x版本比2.x 版本在 各個方面都高階和合理了很多,所以建議初學者都從3.x 開始學習python.  range 的在3.x的改進就能看出: 在2.x 中產生乙個list , 而3.x 中產生的是乙個 生成器,在記憶體優化上更高一層。

好了扯遠了, 寫這些主要是為了說明  用3.x 演示**和2.x 的區別: 在3.x 中 如果想保證 開頭宣告的l 是list ,如下:l = list(range(1,101))

我們具體解釋下 range(start : stop : step) 中三個暫稱為 引數的作用和用法,以及一些小技巧:

1, start: 如上所說, 為列表(3.x 為 range 型別)的開始, 切片或者宣告時 可以省略,省略預設 start為0。

2, stop:  列表的結束(不包含), 切片時可以省略,省略預設為列表的最後。

3, step: 為步長,即 列表中元素之間的差, 切片或者宣告時 可以省略, 預設為1。

下面就range函式的各種省略的組合用** 一一說明:>>> list(range(3)) ## 宣告時 省略 start 和 step

[0, 1, 2]

>>> list(range(1,3)) ## 宣告時 省略 step

[1, 2]

>>> list(range(1,11,2))  ## 步長為2

[1, 3, 5, 7, 9]

>>> list(range(11,1,-2)) ## 步長為負數

[11, 9, 7, 5, 3]

列表切片的start  stop  step 和 range函式 差不多:>>> l= list(range(1,21))  ##宣告 列表 l

>>> print (l)

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]

>>> print(l[2:6]) ## 省略 step (步長), step預設為1

[3, 4, 5, 6]

>>> print(l[2:10:2]) ## 顯式宣告 step 為2

[3, 5, 7, 9]

>>> print(l[10:2:-2])  ## 顯式宣告 step 為 -2

[11, 9, 7, 5]

>>> print(l[:19]) ## 省略 start, start 預設為0; 省略步長 step, 預設為1

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]

>>> print(l[0::1]) ## 省略 stop , 預設到列表的結尾。

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]

python 切片 ,字串逆序

每天一點點 python 切片 字串逆序 原始字串 name abcdeabcde 說明 字串下標從0開始,即第0個字元是a,第2個字元是c,類推 1 字串長度 len name 輸出結果 10 2 name 2 7 取輸出結果 cdeab 注意 左包含,右不含 起始位置 結束位置 1 步長 3 全...

python 切片 Python 列表切片

想必很多人都使用過列表的切片,通過切片可以從列表中獲取乙個或多個元素,但你真的了解切片?一 一般玩法 name a b c d e f g h name 0 2 獲取 0 2 中間的元素,不包括索引為 2 的元素 a b name 2 從 0 開始切,可省略 0 a b name 1 同樣地,切到最...

pythonint切片 python 切片

切片 list取值的一種方式,在ist中取多個值時,就叫切片 lis list range 1,21 print lis print lis 0 11 print lis 0 11 2 print lis 1 lists 於萍 李夢 王春武 李丹利 for name in lists print n...