在list,string 中取部分元素的操作是十分常見的
如下list:
>>> list = [1,2,'qwe',3,'asd']
>>> list
[1, 2, 'qwe', 3, 'asd']
想要取中間三個元素,要怎麼做?
笨方法 1
直接利用索引取值
>>> list[1],list[2],list[3]
(2, 'qwe', 3)
如果有100個元素或者1000元素需要取那? 豈不是要累死。。
笨方法 2
利用迴圈取值
>>>
for n in range(3) :
print list[n]12
qwe
對於經常指定範圍,利用迴圈會很麻煩。
python提供了切片操作符,大大簡化了這種操作
對於上面的問題,只需一行**即可解決
>>> list
[1:4]
[2, 'qwe', 3]
切片用法解析
list[1:4]當需要從索引『0』開始取值時,可以省略切片中的起始的『0』表示從索引』1』,開始取元素,到索引 『4』結束,並且不包括索引』4』.
即list[0:4]經過切片後取到的值為list[1]lisi[2]list[3]
>>> list
[:3] ##取索引 0 到 2 的值
[1, 2, 'qwe'] ## list
[1]list
[2]list
[3]
同樣,python還支援倒序切片
>>> list
[-1:]
['asd']
>>> list
[-2:-1]
[3]>>> list
[-3:-1]
['qwe', 3]
Python高階特性 切片 Slice
如何在乙個陣列中取特定的一組資料?是乙個個指定?l range 10 l 0,1,2,3,4,5,6,7,8,9 l 0 0 l 1 l 2 l 3 1,2,3 資料少還行,要是資料多呢?迴圈怎麼樣?l range 10 l 0,1,2,3,4,5,6,7,8,9 for i in range 3 ...
Python高階特性之切片
切片操作符是序列名後跟乙個方括號,方括號中有一對可選的數字,並用冒號分割。注意這與你使用的索引操作符十分相似。記住數是可選的,而冒號是必須的。切片操作符中的第乙個數 冒號之前 表示切片開始的位置,第二個數 冒號之後 表示切片到 結束,第三個數 冒號之後 表示切片間隔數。如果不指定第乙個數,pytho...
python高階特性(1) 切片
原文 取乙個list或tuple的部分元素是非常常見的操作。比如,乙個list如下 l michael sarah tracy bob jack 取前3個元素,應該怎麼做?笨辦法 l 0 l 1 l 2 michael sarah tracy 之所以是笨辦法是因為擴充套件一下,取前n個元素就沒轍了。...