日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

Python 之列表的常用方法

發(fā)布時(shí)間:2025/1/21 python 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python 之列表的常用方法 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

前言

方法是與對(duì)象(列表、數(shù)、字符串等)聯(lián)系緊密的函數(shù),調(diào)用方式為 object.method(arg),方法調(diào)用和函數(shù)調(diào)用很像。這里主要列舉列表中常用的幾個(gè)方法。

1.append

append 用于將一個(gè)對(duì)象附加到列表末尾。
需要注意的是,append 只是修改原列表,不會(huì)返回修改過(guò)后的新列表。

>>> a = [1,2,3] >>> a.append(4) >>> a [1, 2, 3, 4]

2.clear

clear 用于清空列表的內(nèi)容。

>>> a = [1,2,3,4] >>> a.clear() >>> a []

這類(lèi)似于切片中賦值語(yǔ)句a[:] = []

3.copy

copy 用于復(fù)制列表。
常規(guī)的復(fù)制只是將一個(gè)名稱(chēng)關(guān)聯(lián)到另一個(gè)列表,如下:

>>> a = [1,2,3] >>> b = a >>> b[1] = 5 >>> a [1, 5, 3]

這里修改了 b 列表的值,a 列表也跟著變了,這種復(fù)制方式只是相當(dāng)于給同一個(gè)列表重新命名而已,如果要讓a 和 b 指向不同的列表,就需要將 b 關(guān)聯(lián)到 a 的副本。如下:

>>> a = [1,2,3] >>> b = a.copy() >>> b[1] = 6 >>> a [1, 2, 3]

這類(lèi)似于使用 a[:]或者 list(a),這兩個(gè)也是復(fù)制 a

4.count

count 用于計(jì)算指定的元素在列表中出現(xiàn)的次數(shù)。
如下示例:

>>> a = [1,1,2,3,4,4,4,5] >>> a.count(4) 3

5.extend

extend能夠?qū)⒍鄠€(gè)值附加到列表末尾,如下示例:

>>> a = [1,2,3] >>> b = [4,5,6] >>> a.extend(b) >>> a [1, 2, 3, 4, 5, 6]

這個(gè)方法類(lèi)似于拼接,注意這里沒(méi)有返回值,并且 extend 會(huì)直接修改被擴(kuò)展的序列,比如這里的 a,這和常規(guī)的拼接(直接用“+”號(hào)連接起來(lái))有點(diǎn)不同, 常規(guī)拼接是返回一個(gè)新的列表,而原有列表并沒(méi)有變化,如下示例:

>>> a = [1,2,3] >>> b = [4,5,6] >>> a + b [1, 2, 3, 4, 5, 6] >>> a [1, 2, 3]

所以 extend 方法和常規(guī)拼接有不同之處。如果直接將常規(guī)拼接賦值給a,如下:
a = a + b
這樣拼接的效率會(huì)比 extend 低。
還可以通過(guò)切片賦值的方式來(lái)實(shí)現(xiàn)同樣的效果,如下:

>>> a = [1,2,3] >>> b = [4,5,6] >>> a[len(a):] = b >>> a [1, 2, 3, 4, 5, 6]

雖然效果是一樣的,但是這樣寫(xiě)的代碼可讀性會(huì)比較差。

6.index

index 的作用是在列表中查找指定值第一次出現(xiàn)的索引:

>>> a = [1,1,2,3,4,3] >>> a.index(3) 3

注意,這里一定是只返回查找值第一次出現(xiàn)的索引,順序從左到右。如果列表中不存在該值,將會(huì)引發(fā)異常。

7. insert

insert 方法是用于將一個(gè)對(duì)象插入列表中。

>>> a = [1,2,3,4] >>> a.insert(1,7) >>> a [1, 7, 2, 3, 4]

8.pop

方法 pop 是從列表中刪除列表中最后一個(gè)元素,并將其返回。

>>> a = [1,2,3,4] >>> a.pop() 4 >>> a.pop() 3 >>> a [1, 2]

pop 是唯一既可以修改列表又返回一個(gè)非 None 值的列表方法

9.remove

方法 remove 用于刪除第一個(gè)為指定值的元素。

>>> a = [1,2,3,4,5,2,3,2] >>> a.remove(2) >>> a [1, 3, 4, 5, 2, 3, 2]

注意,這里只刪除第一個(gè)指定值,從左到右順序。remove 是就地修改但不返回值的方法之一。

10.reverse

reverse 按相反的順序排列列表中的元素。

>>> a = [1,2,3,4] >>> a.reverse() >>> a [4, 3, 2, 1]

注意,reverse 也是就地修改列表,但是不返回任何值。

11.sort

sort 用于對(duì)列表就地排序。就地排序就是說(shuō)對(duì)原來(lái)的列表進(jìn)行修改,使其元素按順序排列,而不是返回排序后的列表的副本。

>>> a = [4,5,6,1,2] >>> a.sort() >>> a [1, 2, 4, 5, 6]

如果僅僅需要排序后的列表副本 并且要保留原有的列表不變時(shí),可以先將原有列表復(fù)制一份,然后再進(jìn)行排序,如下:

>>> a = [4,5,6,1,2] >>> b = a.copy() >>> b.sort() >>> a [4, 5, 6, 1, 2] >>> b [1, 2, 4, 5, 6]

這里不能用簡(jiǎn)單的賦值,如果賦值那么 a 和b 就指向同一個(gè)列表。
為獲取排序后列表的副本,另一種方式是使用函數(shù) sorted

>>> a = [4,5,6,1,2] >>> b = sorted(a) >>> a [4, 5, 6, 1, 2] >>> b [1, 2, 4, 5, 6]

12.高級(jí)排序

方法 sort 有接受兩個(gè)可選參數(shù) key 和 reverse。這兩個(gè)參數(shù)通常是按名稱(chēng)來(lái)指定的,稱(chēng)為關(guān)鍵字參數(shù)。key 就是指定需要按照什么屬性來(lái)進(jìn)行排序,而 rerverse 是指定是否要按照相反順序來(lái)進(jìn)行排序。
如下,按照長(zhǎng)度來(lái)進(jìn)行排序:

>>> a = ['word','aa','hello','waq'] >>> a.sort(key = len) >>> a ['aa', 'waq', 'word', 'hello'] >>> a = [3,1,4,5,2] >>> a.sort(reverse = True) >>> a [5, 4, 3, 2, 1]

sorted 也接受key 和 reverse 兩個(gè)參數(shù),在很多情況下,將參數(shù) key 設(shè)置成一個(gè)自定義函數(shù)將會(huì)很有用。

總結(jié)

以上是生活随笔為你收集整理的Python 之列表的常用方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。