Learning Python Part I 之 列表

特性

列表的幾種特性:

  • 任意對象的有序集合體:
    從功能的角度來講,列表就是一個容器,可以用來收集可以被當做一個羣組的任意對象。並且列表中的對象保持從左到右的位置順序,由此可見,列表也是序列。
  • 可以通過偏移量訪問包含的對象:
    列表也是序列類型,可以適用序列類型的所有操作
  • 可變長度、異構性(heterogeneous)和任意嵌套

    可以增加和刪除包含的對;可以包含任意類型的對象,不僅僅是字符串和數字,也可以包含字典、列表等。你可以創建一個列表,其中包含兩層列表,即嵌套。

  • 屬於可變類型、序列類型

  • 是一個包含對象引用的數組
    列表包含的是指向其他對象的引用的,就像C中的指針數組,在Python列表中定位一個元素和在C數組中的速度幾乎一樣快。事實上在Python解釋器內部,列表就是數組,而不是鏈式結構。其實任何時候你將一個對象賦值給一個數據結構體或變量名,Python儲存的都是指向這個對象的引用而不是複製這個對象。

方法

需要時可以通過help(list)dir(list)查看列表的所有方法和具體方法的使用方法。

這裏寫圖片描述

舉例

>>> a = [1, 4, 6, 7, 8, 3, 6, 7, 6] #創建列表
>>> a.append(4)#列表末尾插入元素
>>> a
[1, 4, 6, 7, 8, 3, 6, 7, 6, 4]
>>> a.insert(2,6)#列表特定位置插入元素
>>> a
[1, 4, 6, 6, 7, 8, 3, 6, 7, 6, 4]
>>> a.count(6)#列表中某個元素出現的次數
4
>>> a.remove(3)#刪除特定位置的元素
>>> a
[1, 4, 6, 6, 7, 8, 6, 7, 6, 4]
>>> a.reverse()#反轉列表
>>> a
[4, 6, 7, 6, 8, 7, 6, 6, 4, 1]
>>> b = [12, 11, 15, 19]
>>> a.extend(b)#將列表b添加到列表a末尾
>>> a
[4, 6, 7, 6, 8, 7, 6, 6, 4, 1, 12, 11, 15, 19]
>>> a.sort()#列表排序
>>> a
[1, 4, 4, 6, 6, 6, 6, 7, 7, 8, 11, 12, 15, 19]
>>> del a[3] #del關鍵字刪除列表中特定位置的元素
>>> a
[1, 4, 4, 6, 6, 6, 7, 7, 8, 11, 12, 15, 19]
>>> 

列表排序

str.sort()

>>> L = ['abc', 'ABD', 'aBe']
>>> L.sort()
>>> L
['ABD', 'aBe', 'abc']
>>> L = ['abc', 'ABD', 'aBe']
>>> L.sort(key=str.lower)
>>> L
['abc', 'ABD', 'aBe']
>>>
>>> L = ['abc', 'ABD', 'aBe']
>>> L.sort(key=str.lower, reverse=True)
>>> L
['aBe', 'ABD', 'abc']

sorted()

>>> L = ['abc', 'ABD', 'aBe']
>>> sorted(L, key=str.lower, reverse=True)
['aBe', 'ABD', 'abc'] # Sorting built-in
>>> L = ['abc', 'ABD', 'aBe']
>>> sorted([x.lower() for x in L], reverse=True)
['abe', 'abd', 'abc']
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章