1. 程式人生 > >Python中的list集合

Python中的list集合

list

基於Python2.7版本

Python內建的一種資料型別是列表:list。list是一種有序的集合,可以隨時新增和刪除其中的元素。

比如,列出班裡所有同學的名字,就可以用一個list表示:

>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates
['Michael', 'Bob', 'Tracy']

變數classmates就是一個list。用len()函式可以獲得list元素的個數:

>>> len(classmates)
3

用索引來訪問list中每一個位置的元素,記得索引是從0

開始的:

>>> classmates[0]
'Michael'
>>> classmates[1]
'Bob'

如果要取最後一個元素,除了計算索引位置外,還可以用-1做索引,直接獲取最後一個元素:以此類推,可以獲取倒數第2個、倒數第3個:

>>> classmates[-1]
'Tracy'
>>> classmates[-2]
'Bob'
>>> classmates[-3]
'Michael'

list是一個可變的有序表,所以,可以往list中追加元素到末尾:

>>> classmates.append('Adam')
>>> classmates
['Michael', 'Bob', 'Tracy', 'Adam']

也可以把元素插入到指定的位置,比如索引號為1的位置:

>>> classmates.insert(1, 'Jack')
>>> classmates
['Michael', 'Jack', 'Bob', 'Tracy', 'Adam']

要刪除list末尾的元素,用pop()方法:

>>> classmates.pop()
'Adam'
>>> classmates
['Michael', 'Jack', 'Bob', 'Tracy']

要刪除指定位置的元素,用pop(i)方法,其中i是索引位置:

>>> classmates.pop(1)
'Jack'
>>> classmates
['Michael', 'Bob', 'Tracy']

要把某個元素替換成別的元素,可以直接賦值給對應的索引位置:

>>> classmates[1] = 'Sarah'
>>> classmates
['Michael', 'Sarah', 'Tracy']

list裡面的元素的資料型別也可以不同,比如:

>>> L = ['Apple', 123, True]

list元素也可以是另一個list,比如:

>>> s = ['python', 'java', ['asp', 'php'], 'scheme']
>>> len(s)
4

要拿到'php'可以寫p[1]或者s[2][1],因此s可以看成是一個二維陣列,類似的還有三維、四維……陣列,不過很少用到。

如果一個list中一個元素也沒有,就是一個空的list,它的長度為0:

>>> L = []
>>> len(L)
0