创建list
1、创建空的list
>>> listData=[]
>>> print listData
[]
2、创建带初始元素的list
>>> listData=[5 for i in range(10)]
>>> print listData
[5, 5, 5, 5, 5, 5, 5, 5, 5, 5]
3、初始化相同元素的list
长度为10,元素都为5的lis
>>> listData=[5 for i in range(10)]
>>> print listData
[5, 5, 5, 5, 5, 5, 5, 5, 5, 5]
4、使用range创建连续元素的list
>>> listData1=range(1,10,2)
>>> print listData1
[1, 3, 5, 7, 9]
>>> listData2=range(1,10)
>>> print listData2
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> listData3=range(10)
>>> print listData3
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> listData4=[i for i in range(10)]
>>> print listData4
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
list中添加元素
1、在列表末尾添加元素 append(要添加的元素)
>>> listData=['a','b','c',1,2,3]
>>> listData.append('add to end')
>>> print listData
['a', 'b', 'c', 1, 2, 3, 'add to end']
2、在列表末尾添加一个列表里面的所有元素 extend(列表)
>>> listData=['a','b','c',1,2,3]
>>> listData.extend([5,6,7])
>>> print listData
['a', 'b', 'c', 1, 2, 3, 5, 6, 7]
3、在指定位置插入元素 insert(插入的位置,元素)
在第一个位置插入元素5
>>> listData=['a','b','c',1,2,3]
>>> listData.insert(1,5)
>>> print listData
['a', 5, 'b', 'c', 1, 2, 3]
删除元素
1、使用remove来删除,同时如果要删除的元素不存在会引发错误
>>> listData=['a','b','c',1,2,3]
>>> listData.remove('c')
>>> print listData
['a', 'b', 1, 2, 3]
>>> listData.remove('c')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: list.remove(x): x not in list
2、使用del
删除下标为2的元素('c'元素)
>>> listData=['a','b','c',1,2,3]
>>> del listData[2]
>>> print listData
['a', 'b', 1, 2, 3]
删除多个元素(删除切片)
>>> listData=['a','b','c',1,2,3]
>>> del listData[1:3]
>>> print listData
['a', 1, 2, 3]
3、删除多个元素(删除切片)
>>> listData=['a','b','c',1,2,3]
>>> listData[1:3]=[]
>>> print listData
['a', 1, 2, 3]
4、使用pop来删除最后一个元素并返回这个元素
>>> listData=['a','b','c',1,2,3]
>>> listData.pop()
3
>>> print listData
['a', 'b', 'c', 1, 2]
查找、包含元素
1、index:查找第一个符合条件的元素,返回元素的下标,如果没有找到则报错
>>> listData=['a','b','c',1,2,3,1]
>>> listData.index(1)
3
>>> listData.index('d')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: 'd' is not in list
2、in:用来判断一个元素是否在list中
>>> listData=['a','b','c',1,2,3]
>>> 'b' in listData
True
>>> 4 in listData
False
>>>
3、not in 用来判断一个元素是否不在list中
>>> listData=['a','b','c',1,2,3]
>>> 'b' not in listData
False
>>> 4 not in listData
True
排序操作
如果list里面既有数字又有字符,排序结果为数字在前,字符在后
1、升序
>>> listData=['a','b','c',1,2,3]
>>> listData.sort()
>>> print listData
[1, 2, 3, 'a', 'b', 'c']
2、倒序
>>> listData=['a','b','c',1,2,3]
>>> listData.reverse()
>>> print listData
[3, 2, 1, 'c', 'b', 'a']
统计
count 统计指定值在列表中出现的次数
>>> listData=['a','b','c',1,2,3,'b']
>>> listData.count('b')
2
>>> listData.count(1)
1
元素访问
1、for循环
>>> listData=['a','b','c',1,2,3]
>>> for data in listData:
... print data
...
a
b
c
1
2
3
2、下标访问
当为正数时从前往后,第一个元素下标为0
当为负数时从后往前,最后一个元素下标为-1
>>> listData=['a','b','c',1,2,3]
>>> listData[0]
'a'
>>> listData[-1]
3
>>> listData[-5]
'b'
>>> listData[2]
'c'
切片操作
切片是一个非常有用的概念,其一般形式为 l[start:end:step],其中 start 和 end 分别是开始和结束(不包含)索引,step 是在切片时要跨过的条目数量
>>> listData=['a','b','c',1,2,3]
>>> listData[1:5]
['b', 'c', 1, 2]
>>> listData[1:5:1]
['b', 'c', 1, 2]
>>> listData[1:5:2]
['b', 1]
>>> listData[:2]
['a', 'b']
>>> listData[2:]
['c', 1, 2, 3]
>>> listData[ ::2]
[1, 2, 'a', 'c']
其它操作
1、两个列表相加
>>> listData1=['a','b','c']
>>> listData2=[1,2,3]
>>> listData=listData1+listData2
>>> print listData
['a', 'b', 'c', 1, 2, 3]
2、重复一个列表n次,生成一个新的列表(list*n)
>>> listData1=['a','b','c']
>>> listData1*2
['a', 'b', 'c', 'a', 'b', 'c']
>>> listData1
['a', 'b', 'c']
3、列表长度(len)
>>> listData=['a','b','c',1,2,3]
>>> len(listData)
6
4、连接列表内容为一个字符串(join)
注当列表内容都为字符时才可以进行连接
>>> listData=['a','b','c']
>>> "_".join(listData)
'a_b_c'