<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
由於列表是元素的集合,我們應該能夠獲得這些元素的任何子集。 例如,如果想從列表中獲得前三個元素,我們應該能夠輕鬆地完成。 對於列表中間的任何三個元素,或最後三個元素,或列表中任何位置的任何x個元素,情況也應如此。 列表的這些子集稱為切片。
If L is a list, the expression L [ start : stop : step ] returns the portion of the list from index start to index stop, at a step size step.
下面是列表切片的一個基本範例:
#Example: Slice from index 2 to 7 L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[2:7]) # ['c', 'd', 'e', 'f', 'g'] ['c', 'd', 'e', 'f', 'g']
可以在切片列表時指定負索引。
例如: Slice from index -7 to -2、
L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[-7:-2]) # ['c', 'd', 'e', 'f', 'g']
['c', 'd', 'e', 'f', 'g']
可以同時指定正索引和負索引。
# Slice from index 2 to -5 L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[2:-5]) # ['c', 'd']
['c', 'd']
可以使用step引數指定切片的步長。
step
引數是可選的,預設情況下為1。
#Returns every 2nd item between position 2 to 7 L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[2:7:2]) # ['c', 'e', 'g']
['c', 'e', 'g']
可以指定負步長。
#Example: Returns every 2nd item between position 6 to 1 L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[6:1:-2]) # ['g', 'e', 'c']
['g', 'e', 'c']
省略起始索引會從索引0開始切片。
含義,L [:stop]
等效於L [0:stop]
# Example: Slice the first three items from the list L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[:3]) # ['a', 'b', 'c']
['a', 'b', 'c']
而省略stop索引會將切片延伸到列表的末尾。
意思是L [start:]
等效於L [start:len(L)]
Example: 從列表中切掉最後三項
L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[6:]) # ['g', 'h', 'i']
['g', 'h', 'i']
可以通過省略開始索引和停止索引並將步驟指定為-1來反轉列表。
Example: 使用切片運運算元反轉列表
L = ['a', 'b', 'c', 'd', 'e'] print(L[::-1])
['e', 'd', 'c', 'b', 'a']
可以使用切片賦值一次修改多個列表元素。
Example: 使用slice修改多個列表項
L = ['a', 'b', 'c', 'd', 'e'] L[1:4] = [1, 2, 3] print(L) # ['a', 1, 2, 3, 'e']
['a', 1, 2, 3, 'e']
Example: 替換多個元件以代替單個元件
L = ['a', 'b', 'c', 'd', 'e'] L[1:2] = [1, 2, 3] print(L) # ['a', 1, 2, 3, 'c', 'd', 'e']
['a', 1, 2, 3, 'c', 'd', 'e']
我們可以在列表中插入專案,而無需替換任何內容。只需指定
Example: 使用slice插入多個列表項
L = ['a', 'b', 'c'] L[:0] = [1, 2, 3] print(L) # [1, 2, 3, 'a', 'b', 'c']
[1, 2, 3, 'a', 'b', 'c']
L = ['a', 'b', 'c'] L[len(L):] = [1, 2, 3] print(L) # ['a', 'b', 'c', 1, 2, 3]
['a', 'b', 'c', 1, 2, 3]
可以通過指定切片的開始索引和停止索引將元素插入到列表的中間。
Example:在中間插入多個列表項
L = ['a', 'b', 'c'] L[1:1] = [1, 2, 3] print(L) # ['a', 1, 2, 3, 'b', 'c']
['a', 1, 2, 3, 'b', 'c']
可以通過將適當的切片賦值給空列表來刪除列表中間的多個元素。
也可以將del語句用於切片。
Example: 使用slice刪除多個列表項
L = ['a', 'b', 'c', 'd', 'e'] L[1:5] = [] print(L) # ['a']
['a']
with del keyword L = ['a', 'b', 'c', 'd', 'e'] del L[1:5] print(L) # ['a']
['a']
當執行new_List = old_Lis
t時,實際上沒有兩個列表。 賦值僅將參照複製到列表,而不是實際列表。 因此,賦值後new_List和old_List都參照相同的列表。
可以使用切片運運算元複製列表(也稱為淺拷貝)。
Example: 使用slice建立列表的副本(淺拷貝)
L1 = ['a', 'b', 'c', 'd', 'e'] L2 = L1[:] print(L2) # ['a', 'b', 'c', 'd', 'e'] print(L2 is L1) # False
['a', 'b', 'c', 'd', 'e'] False
到此這篇關於Python元素集合的列表切片的文章就介紹到這了,更多相關Python列表切片內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45