溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python中用slice修改元素的方法

發(fā)布時間:2020-12-14 09:38:29 來源:億速云 閱讀:355 作者:小新 欄目:編程語言

小編給大家分享一下python中用slice修改元素的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

在列表中常用到切割的思想,對數(shù)列進行分離,這就是小編本篇要著重講到的slice函數(shù)。一般我們提到slice會習(xí)慣性的使用切割的方法,在使用上就不能完成發(fā)揮它的作用。其實我們完全可以用slice對序列里的元素進行修改和刪除,畢竟同切割一樣與序列的關(guān)系密不可分。

1.切片語法列表

# https://stackoverflow.com/questions/509211/understanding-slice-notation
# 切片的形式(stride > 0)
>>> seq[:]                # [seq[0],   seq[1],          ..., seq[-1]    ]
>>> seq[low:]             # [seq[low], seq[low+1],      ..., seq[-1]    ]
>>> seq[:high]            # [seq[0],   seq[1],          ..., seq[high-1]]
>>> seq[low:high]         # [seq[low], seq[low+1],      ..., seq[high-1]]
>>> seq[::stride]         # [seq[0],   seq[stride],     ..., seq[-1]    ]
>>> seq[low::stride]      # [seq[low], seq[low+stride], ..., seq[-1]    ]
>>> seq[:high:stride]     # [seq[0],   seq[stride],     ..., seq[high-1]]
>>> seq[low:high:stride]  # [seq[low], seq[low+stride], ..., seq[high-1]]
 
# 切片的形式(stride < 0)
>>> seq[::-stride]        # [seq[-1],   seq[-1-stride],   ..., seq[0]    ]
>>> seq[high::-stride]    # [seq[high], seq[high-stride], ..., seq[0]    ]
>>> seq[:low:-stride]     # [seq[-1],   seq[-1-stride],   ..., seq[low+1]]
>>> seq[high:low:-stride] # [seq[high], seq[high-stride], ..., seq[low+1]]

2.修改序列/元素、刪除序列元素

切片除了可以查找序列中的元素之外,還有一些重要的功能就是修改序列/元素、刪除序列元素。

# 修改
l = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']
l[1:4] = [1, 2, 3] # 修改后結(jié)果為:['a', 1, 2, 3, 'e', 'f', 'g', 'h', 'i']
l[1:2] = [1, 2, 3] # 修改/替換后的結(jié)果為:['a', 1, 2, 3, 2, 3, 'e', 'f', 'g', 'h', 'i']
 
# 插入
l = ['a', 'b', 'c']
l[:0] = [1, 2, 3] # 插入后結(jié)果為:[1, 2, 3, 'a', 'b', 'c']
 
l = ['a', 'b', 'c']
l[len(l):] = [1, 2, 3] # 插入后結(jié)果為:['a', 'b', 'c', 1, 2, 3]
 
l = ['a', 'b', 'c']
l[1:1] = [1, 2, 3] # 插入后結(jié)果為:['a', 1, 2, 3, 'b', 'c']
 
# 刪除
l = ['a', 'b', 'c', 'd', 'e']
l[1:5] = [] # 刪除后結(jié)果為:['a']
 
# 還可以用 del 語句刪除序列中的部分元素
l = ['a', 'b', 'c', 'd', 'e']
del l[1:5] # 刪除后結(jié)果為:['a'],效果一樣

以上是“python中用slice修改元素的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI