python列表操作大全


Python列表操作大全

對於python列表的理解可以和C語言里面的數組進行比較性的記憶與對照,它們比較相似,對於python里面列表的定義可以直接用方括號里加所包含對象的方法,並且python的列表是比較強大的,它包含了很多不同類型的數據:整型數字,浮點型,字符串以及對象等。定義舉例如下:

List1=[1,2,3,”hello world”,”3.1415926”,[1,2,3]]

對於python列表里元素的操作主要分為以下幾個方面:

1、 向列表里面加元素;

2、 刪減列表中的一些元素;

3、 獲取列表里面的特定元素;

4、 列表分片;

5、 常用的列表操作符;

6、 其他常見列表操作函數

7、 列表的拷貝

下面我們來具體講解一下每一個部分:

1、 向列表里面加元素:

向python列表里面添加元素主要有三種方法:

(1)append()

append()對於列表的操作主要實現的是在特定的列表最后添加一個元素,並且只能一次添加一個元素,並且只能在列表最后;

m.append(元素A)

(2)extend()

        extend()對於列表的操作主要實現的是對於特定列表的擴展和增長,可以一次添加多個元素,不過也只能添加在列表的最后;

        m.extend([元素A,元素B,……])

(3)insert()

        insert()對於列表的操作主要是在列表的特定位置添加想要添加的特定元素,比較常用,這里的特定位置是指元素所在列表中的位置索引號,需要注意的是這里的索引號都是從0開始的,不是從1開始的,這個大家需要特別注意。

        m.insert(A,元素B):表示在列表m里面的第A+1處加入元素B

以上的添加功能實現代碼與結果如下實例所示:

 

2、刪減列表中的一些元素;

與之前python列表的添加元素相對,刪減列表里面的一些元素也有三種方法:

(1)m.remove()

m.remove的作用是移除掉列表m里面的特定元素;

m.remove(元素A)

(2)del m[n]

        它的作用是刪除掉列表里面的索引號位置為n 的元素,這里需要注意的是del是一種操作語句。

        del m[n]

(3)m.pop()

        它的作用是將列表m的最后一個元素返回,並且在此基礎上進行刪除掉

        Temp=m.pop()   %這里temp就會直接等於嗎列表里最后一個元素。

        Print(m)       %這里再次輸出m的時候已經是刪掉最后一個元素的m列表

以上的三種操作實例及其實現如下代碼所示:

 


對於列表里元素的特定獲取一般直接進行選取就可以,選取的元素用其索引號進行選取,規范實現代碼如下所示:
3、獲取列表里面的特定元素

Temp=m[n]   %獲取m列表第n+位置處的元素


4、列表分片;
例如以下程序及其實現:

對於列表分片的含義需要明白,列表分片就是指將列表里面的一些列元素(不僅僅是某一個元素)進行獲取或者得到,獲取的規則如下所示:

Temp=m[A:B] %表示將m列表里從索引號位置為A開始的元素到B-1處元素之間的列表獲取賦給temp.

例如以下的代碼實現:

 

 

 

5、常用的列表操作符

1)+:它主要實現的是多個列表之間的拼接
常見的列表操作符

2)*:主要實現的是列表的復制和添加

3)比較>,<:主要進行數據型列表的元素比較

4)and等:;邏輯運算符,可以進行列表之間的邏輯判斷


具體實例如下所示:

6、 其他常見列表操作函數:

1)m.count(A):輸出元素A在列表m里面出現的次數

2)m.index(A):輸出元素A在列表m里面的索引位置號

m.index(A,a,b):對於列表m里面包含多個元素A時,輸出在列表m索引號a-b之間的特定索引號

 3)m.reverse():將列表m進行前后的翻轉,前變后,后變前

 4)m.sort():將列表m里面地數據進行從小到大的排列

 5)m.sort(reverse=True):將列表m里面地數據進行從大到小的排列

    其實對於列表m里面的元素進行從大到小的排列還可以用以下方法:

  N=m.sort()

  N.reverse()

    以上的操作函數具體實現實例如下所示:

7、 Python列表的拷貝

對於python里面如果想要進行列表的復制,具體的操作語句如下:

1) 深拷貝:

M=[A,b,a,c]

N=M[:]

2) 淺拷貝:

N=M

有人說可以直接將M賦值給N也是一樣的,雖然表面看起來兩者的實現效果是一樣的,但是如果你要繼續對N進行操作的時候就會出現問題,因為對於正確的第一種拷貝復制,它的作用是將列表M復制下來給N,如果后面對M進行操作,它對於N是完全沒有影響的,而我們如果采用賦值的方式,那么在后面對M操作以后就會影響到N,N的值也會隨之改變。

    綜上所述,第一種python列表的拷貝方法才是真正意義上的深拷貝,而賦值操作只是一種暫時的等量代換,它屬於一種淺拷貝。

    具體的實現代碼和區別如下所示:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM