Python切片和切片賦值

2021-08-21 17:08:13 字數 1265 閱讀 9126

a = [1, 2, 3]

b = a[:] # 切片

a[1:] = # 切片賦值

切片[:]在右側,切片賦值[:]在左側;

切片是淺拷貝,不影響原序列;

切片賦值是針對原序列進行操作,改變切片區域的序列。

切片賦值,給序列的切片部分新的賦值必須是可迭代型別

a = [1, 2, 3]

a[1:2] = 3

# typeerror: can only assign an iterable

# int型別的物件是不可迭代物件。

序列(consequence)

- python的一種資料結構,根據索引獲取序列中的物件。

- 內建序列類:

- list

- tuple

- 字串(string,unicode)

- buffer

- 具有序列結構的類一般可以使用方法:in、len()、max()、min()、+、*、index()、切片

參考資料:

ython 序列的切片操作與技巧

# 從右往左取值

a = [1, 2, 3, 1]

b = a[3:0:-1]

print(b)

# [1, 3, 2]

print(a[len(a)])

# indexerror: list index out of range

a = [1, 2, 3, 4]

print(a[-100: 100])

# [1, 2, 3, 4]

切片賦值是針對原序列進行操作,改變切片區域的序列。

a = [1, 2, 3, 4]

a[1:3] = (30,)

print(a)

# [1, 30, 4],新賦值乙個元素,原來的兩個被切掉。

切片賦值,給序列的切片部分新的賦值必須是可迭代型別

a = [1, 2, 3]

a[1:2] = 3

# typeerror: can only assign an iterable

# int型別的物件是不可迭代物件。

Python札記 切片賦值

一 疑惑 今天在看 python cookbook 第四章python技巧的4.7小節時,發現一段初看起來讓人疑惑的 該小節的任務是將乙個包含列表 行 的列表,轉換成乙個新的列表。新的列表包含了同樣的行,但是其中一些列被刪除或者重新排序了。讓人疑惑的 如下 1 listofrows 1,2,3,4 ...

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...

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 同樣地,切到最...