Python List 用法小結

一、List列表基礎語法和操作:

Python的列表也有索引:第一個索引是0,第二個索引是1,依此類推。

Python中List,它可以作爲一個方括號內的逗號分隔值出現,且列表的數據項可以爲不相同的類型。

List是序列可以進行的操作包括索引,切片,加,乘,檢查成員。

List實例:

name = ['Michael', 'Bob', 'Tracy']
a = [5, 2, 3, 1, 4]
li = [{"day":2},{"day":1},{"day":3}]
jor =[5,'1',{"day":1}]

List創建:

  list1 = [ ]
  list2 = [2, 3, 4]
  list3 = ["red", "green"]
  list4 = [2, "three", ,{"day":1}]    #一個列表裏面可以包含不同類型的元素

List訪問:

List[0]  #取第一個值
List[0:5] #取前五個值
List[-1] #取最後一個值
List[-2:] #取最後兩個值

List更新、追加和刪除:

L1 = ['Google', 'Runoob', 'Taobao'] 
L1[1] = 'Great'  # 更新
L1.append('Baidu')  # append()方法追加

print(L1) # 結果爲 ['Google', 'Great', 'Taobao', 'Baidu']

del L1[2] # 刪除索引爲2元素
print(L1) # 結果爲 ['Google', 'Great', 'Baidu']

List排序:

List.sort()    #正向排序
List.reverse()  #反轉列表
List.sort().reverse()  #先正向排序再反轉列表,就是反向排序

List切片:

#列表切片,切取索引從a到b-1的元素
sample[a:b] 
#列表切片,切取索引從a到結束的元素
sample[a:] 
#列表切片,切取索引從0到b-1的元素
sample[:b] 
#列表複製,切取所有並賦值給一個變量
variable_name=sample[:]

List解析:詳見 Barry_Lhs 編寫的 Python列表解析式

  [表達式 for 元素 in 可迭代對象 if 條件]   list2 = [ x*0.5 for x in list1 if x <3] 

>>> list1 = [x for x in range(5)]
>>> list1
[0, 1, 2, 3, 4]
>>> list2 = [0.5 * x for x in list1]
>>> list2
[0.0, 0.5, 1.0, 1.5, 2.0]
>>> list3 = [x for x in list2 if x < 1.5]
>>> list3
[0.0, 0.5, 1.0]

嵌套列表:

使用嵌套列表即在列表裏創建其它列表,例如:

>>>a = ['a', 'b', 'c']
>>> n = [1, 2, 3]
>>> x = [a, n]
>>> x
[['a', 'b', 'c'], [1, 2, 3]]
>>> x[0]
['a', 'b', 'c']
>>> x[0][1]
'b'

二、List中一些常用方法:

1、List元素去重:

>>> a
[1, 2, 2, 3, 6, 8]
>>> a = list(set(a))
>>> a
[1, 2, 3, 6, 8]
>>>

2、List合併:

Python將多個list合併爲1個list,可以使用"+"號完成操作,或使用extend方法。

3、Python列表函數:

1 len(list)
列表元素個數
2 max(list)
返回列表元素最大值
3 min(list)
返回列表元素最小值
4

list(seq)

將元組轉換爲列表

4、Python常用方法:

1 list.append(obj)
在列表末尾添加新的對象
2 list.count(obj)
統計某個元素在列表中出現的次數
3 list.extend(seq)
在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)
4 list.index(obj)
從列表中找出某個值第一個匹配項的索引位置
5 list.insert(index, obj)
將對象插入列表
6 list.pop([index=-1])
移除列表中的一個元素(默認最後一個元素),並且返回該元素的值
7 list.remove(obj)
移除列表中某個值的第一個匹配項
8 list.reverse()
反向列表中元素
9 list.sort( key=None, reverse=False)
對原列表進行排序
10 list.clear()
清空列表
11 list.copy()
複製列表

使用注意問題:

  L.index(value[,begin[,end]])
        - 返回對應元素的索引下標,
        - begin爲開始索引,end爲結束索引
        - 當 value 不存在時觸發ValueError錯誤

    L.insert(index,obj):在指定位置插入元素
        - index:索引值,插入到索引值之前

    L.count(x):返回列表中x的個數(沒有,返回0)

    L.remove(value):從列表中刪除值
        - 只刪除第一次出現的value
        - 需要知道value

    L.copy():複製列表(生成新的id值;只複製一層,不復制深層對象)

    L.append(value)
        - 向列表末尾追加單個元素
        - L = [1,2,3]
          L.append([6,7,8])
      --> L = [1,2,3,[6,7,8]]

    L.extend(list)
        - 擴展,向列表追加列表
        - L = [1,2,3]
          L.extend([6,7,8])
       --> L = [1,2,3,6,7,8]
      也就是列表的合併
    >>> L1 = [1, 2, 3, 4, 5]
    >>> L2 = [20, 30, 40]
    >>> L1.extend(L2)
    >>> L1
    [1, 2, 3, 4, 5, 20, 30, 40]
   直接使用L1 + L2亦可

    L.clear(): 清空列表
        - 等同於 L[:] = []

    L.sort(reverse = False):排序
        - 將列表中的元素進行排序,默認順序按值的小到大的順序排列

    L.reverse():列表的反轉,改變原列表的先後順序,返回值None

    L.pop([index]):彈出元素
        - 不加index時,默認刪除最後一個元素,並返回刪除元素的引用關係
        - 刪除索引對應的元素
  求和 sum(list_name)
  最大最小max(a) min(a)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章