列表是指一组数据有序的排列方式,可以通过索引的方式来访问数据。列表是可修改的。
1.创建列表
列表中的数据可是任意类型,包括整数、浮点数、字符串、列表、元组,字典等
list1=[1,2,3,4,5,6] list2=['a','b','c',5,6,7,[1,2,3,4]]
修改列表
list1=[1,2,3,4] list1[0]=999 print list1 [999, 2, 3, 4]
2.访问列表
列表访问与字符串一致。
list1=[1,2,3,4,5] list1[0] 1 list1[-3] 3
3.切片
列表的切片与字符串相同。
list1[1:-3] [2] list1[1:-1] [2, 3, 4] list1[:] [1, 2, 3, 4, 5] list1[9:] []
4、列表的方法
a. append向列表尾部增加一个元素
格式:L.append(object) -- append object to end
>>> l=[1,2,3,4,5] >>> print l [1, 2, 3, 4, 5] >>> l.append(0) >>> print l [1, 2, 3, 4, 5, 0]
b. count列表中一个元素出现的次数(有返回值)
格式:L.count(value) -> integer -- return number of occurrences of value
>>> l=[1,2,1,2,1,2,1,2] >>> l.count(1) 4 >>> l.count(2) 4
c. extend向列表中追加一个列表(元组)
格式:L.extend(iterable) -- extend list by appending elements from the iterable
>>> l=[1,2,3,4,5]
>>> b=[1,2,3] >>> l.extend(b) >>> print l [1, 2, 3, 4, 5, 1, 2, 3] >>> b=(6,6,6) >>> l.extend(b) >>> l [1, 2, 3, 4, 5, 1, 2, 3, 6, 6, 6]
d. index显示列表中元素的索引位置,如果不存在报异常.
格式:L.index(value, [start, [stop]]) -> integer -- return first index of value.
>>> l=[1,2,3,4,5] >>> l.index(4) 3 >>> l.index(7) Traceback (most recent call last): File "", line 1, in ValueError: 7 is not in list 在这里index用法中,可在指定元素之后指定索引位置 >>> l.index(4,3,5) 3 >>> l.index(4,4,5) Traceback (most recent call last): File " ", line 1, in ValueError: 4 is not in list
e. instert 插入一个元素
格式:L.insert(index, object) -- insert object before index>>> l
[1, 2, 3, 4, 5] >>> l.insert(2,9) >>> print l [1, 2, 9, 3, 4, 5]
2指索引位置为2位置的元素,在其后插入9
f. pop删除最后一个元素,有返回值
格式: L.pop([index]) -> item -- remove and return item at index (default last).
>>> l=[1,2,3,4,5] >>> l.pop() 5 >>> print l [1, 2, 3, 4]
g. remove删除指定元素,不存在则报异常
格式:L.remove(value) -- remove first occurrence of value.
>>> print l [1, 2, 3, 4] >>> l.remove(2) >>> print l [1, 3, 4] >>> l.remove(9) Traceback (most recent call last): File "", line 1, in ValueError: list.remove(x): x not in list
h. reverse列表反转
格式:L.reverse() -- reverse *IN PLACE*
>>> print l [1, 2, 3, 4, 5, 6] >>> l.reverse() >>> print l [6, 5, 4, 3, 2, 1] >>>
i. sort列表排序
格式:L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*;
cmp(x, y) -> -1, 0, 1
cmp可以指定一个函数,key可以指定排序的依据,reverse是指排列顺序,默认False从小到大。
>>> l=[3,5,6,2,4,1,9] >>> l.sort() >>> print l [1, 2, 3, 4, 5, 6, 9]
从大到小排序
>>> l=[3,5,6,2,4,1,9] >>> l.sort(reverse=True) >>> l [9, 6, 5, 4, 3, 2, 1]
依据字符串长短排序
>>> l=["c","www","aaaa","aa","ee"] >>> l.sort(key=len) >>> print l ['c', 'aa', 'ee', 'www', 'aaaa']
默认排序
>>> l=["c","www","aaaa","aa","ee"] >>> l.sort() >>> print l ['aa', 'aaaa', 'c', 'ee', 'www']
总结:列表的用法相对于字符串少,也简单,但列表同字符串一样重要。列表是可修改的,这一点十分重要,看完这篇文章后大家可以想想列表与字符串如何转化,在上一章文章中是有介绍的哦,忘记了的话可以看看上一篇文章。