列表特性:app
有序的集合ide
經過偏移來索引,從而讀取數據函數
支持嵌套對象
可變的類型排序
切片索引
正向索引(左-> 右):ci
>>> a = [1,2,3,4,5,6,7]
>>> a[0:4:1] # 1 是步長
[1, 2, 3, 4]rem
反向索引:it
>>> a[-1:-4:-1] (右-左
)
[7, 6, 5]
>>>
class
默認索引:
>>> a[1:]
[2, 3, 4, 5, 6, 7]
列表的添加操做
>>> a = [1,2,3,4]
>>> b = [5,6,7,8]
>>> a + b
[1, 2, 3, 4, 5, 6,7,8] # 生成一個新的列表
>>>
Extend : 接受參數並將該參數的每一個元素都添加到原有的列表中,原地修改列表而不是新建列表
>>> a = [1,2,3]
>>> b = [4,5,6]
>>>
>>> a.extend(b)
>>> a
[1, 2, 3, 4, 5, 6]
>>>
Append :添加任意對象到列表的末端
>>> a = [1,2,3]
>>> a.append(4)
>>> a
[1, 2, 3, 4]
>>> a.append([3,4,5]) //插入列表
>>> a
[1, 2, 3, 4, [3, 4, 5]]
Insert: 插入任意對象到列表中,能夠控制插入位置。
[1, 2, 3, 4, [3, 4, 5]]
>>>
>>> a.insert(1,"abc")
>>> a
[1, 'abc', 2, 3, 4, [3, 4, 5]]
列表的修改操做
修改列表自己只須要直接賦值操做就行。
>>> a = [1,2,3]
>>> a[1]='test'
>>> a
[1, 'test', 3]
刪除操做
Del :咱們經過索引刪除指定位置的元素
>>> a = [1,2,3,4,4]
>>> del a[0]
>>> a
[2, 3, 4, 4]
remove:移除列表中指定值的第一個匹配值。若是沒找到的話,則會拋出異常。
>>> a
[2, 3, 4, 4]
>>> a.remove(4)
>>> a
[2, 3, 4
Pop:返回最後一個元素,並從list中刪除它。
>>> a = [1,2,3,4,5,6,7]
>>> a.pop()
7
>>> a
[1, 2, 3, 4, 5, 6]
list成員關係
In not in 咱們能夠判斷一個元素是否在列表裏,返回一個bool類型,如果true 則在list 中,反之則不在
>>> a = [1,2,3]
>>>
>>> 2 in a
True
>>> 5 in a
False
>>> 5 not in a
True
>>>
list 推導式
1.首先迭代iterable裏全部內容,每一次迭代,都把iterable裏相應內容放到iter_var中,再在表達式中應用該iter_var的內容,最後用表達式的計算值生成一個列表。
比咱們要生成一個包含1到10的列表
>>> [x for x in range(1,11)]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>>
2. 加入了判斷語句,只有知足條件的內容才把iterable裏相應內容放到iter_var中,再在表達式中應用該iter_var的內容,最後用表達式的計算值生成一個列表。
要生成包含1到10的全部奇數列表。
range(1,11,2)
>>> range(1,11,2)
[1, 3, 5, 7, 9]
>>>
排序翻轉:sort,reverse
sort: 直接修改原列表, 它的返回值也爲none
>>> a = [33,11,22,44]
>>> b = a.sort() //none
>>>
>>> b
>>> if b is None:
... print 'haha'
>>> if b is None:
... print 'haha'
...
haha
reverse 函數: 反轉一個list,它的返回值也爲none
>>> a[11, 22, 33, 44]>>> b = a.reverse()>>> b>>> a //直接看a列表變量能看到翻轉的效果[44, 33, 22, 11]>>>