提前说说
没什么好说的,开干!
列表
1.列表的创建
例:a_list=[xxxxxx,xxxxx,xxx,xxx]
2.列表元素的读取
使用索引课直接访问列表元素,方法为:列表名【索引】。如果索引不存在,则提示下标越界、
3.切片:
列表名【开始索引:结束索引:步长】
开始索引:表示第一个元素对象,正索引位置默认为0;负索引位置默认为-len。
结束索引:表示最后一个元素对象,正索引位置默认为len-1;负索引位置默认为-1。
步长:表示取值的步长,默认为1,步长值不能为0
4.增加元素:
使用“+”运算符将一个新列表添加在原列表尾部。
例:a_list[xxxxx,xxx,xxx]
a_list=a_list+[x]
a_list[xxxx,xxx,xxx,x]
使用列表对象的append()方法向列表尾部添加一个新的元素,这种方法是在原列表地址上操作的。
师兄列表对象的extend()方法将一个新列表添加在原列表的尾部,这种方法是在原列表地址上操作的。
使用列表对象的insert()方法将一个元素插入到列表的指定位置。该方法有两个参数:第一个参数为插入位置;第二个参数为插入元素
>>> a_list.insert(1,2)
>>> a_list
['dada', 2, 121, 'naba', 4455]
>>> a_list.append('python')
>>> a_list
['dada', 2, 121, 'naba', 4455, 'python']
>>> id(a_list)
1425101763080
>>> a_list=a_list+[26]
>>> id(a_list)
1425105291144
>>> a_list
['dada', 2, 121, 'naba', 4455, 'python', 26]
>>>
5.检索元素
使用列表对象的index()方法可以获取指定元素首次出现的下标,语法为:index(value,【,start,【,end】】),其中start和end分别用来指定检索的开始和结束的位置,start默认为0,end默认为列表长度。
>>> a_list.index(121)
2
>>> a_list.index(4455,4)
4
>>> a_list.index(4455,5)
Traceback (most recent call last):
File "<pyshell#19>", line 1, in <module>
a_list.index(4455,5)
ValueError: 4455 is not in list
>>> a_list.index('naba',1,6)
3
>>>
使用列表对象的count()方法统计列表中指定元素出现的次数。
>>> a_list.extend([4455,'naba'])
>>> a_list
['dada', 2, 121, 'naba', 4455, 'python', 26, 4455, 'naba']
>>> a_list.count('dada')
1
>>> a_list.count(44)
0
>>>
>>> a_list.count(4455)
2
使用in运算符检索某个元素是否在该列表中。如果元素在列表中,返回TRUE,否则返回FALSE
>>> 5 in a_list
False
>>> python in a_list
Traceback (most recent call last):
File "<pyshell#30>", line 1, in <module>
python in a_list
NameError: name 'python' is not defined
>>> 'python' in a_list
True
6.删除元素
使用del命令删除列表中的指定位置的元素,del也可以删除整个列表
>>> del a_list[1]
>>> a_list
['dada', 121, 'naba', 4455, 'python', 26, 4455, 'naba']
>>> del a_list
>>> a_list
Traceback (most recent call last):
File "<pyshell#35>", line 1, in <module>
a_list
NameError: name 'a_list' is not defined
使用列表对象的remove()方法删除首次出现的指定元素,如果列表中不存在要删除的元素,则会报错。
>>> a_list.remove(4455)
>>> a_list
['dada', 121, 'naba', 'python', 26, 4455, 'naba']
使用列表的pop()方法删除并返回指定位置上的元素,缺少参数时删除最后一个位置上的元素,如果给定的索引超出了列表的范围,则会报错
>>> a_list
['dada', 121, 'naba', 'python', 26, 4455, 'naba']
>>> a_list.pop()
'naba'
>>> a_list
['dada', 121, 'naba', 'python', 26, 4455]
>>> a_list.pop(2)
'naba
列表中常用的函数
1.cmp()
格式:cmp(列表1,列表2)
功能:对两个列表逐项进行比较,先比较列表的第一个元素,若相同则分别取两个列表的下一个元素进行比较;若不相同则终止比较。如果第一个列表最后比较的元素大于第二个列表的元素,则结果为1,相反-1,元素完全相同结果为0,类似>,<,==等关系运算符
Python3.x已经不支持cmp()函数
2.len()
格式:len(列表)
功能:返回列表的元素个数
3.max()和min()
格式:max(列表),min(列表)
功能:返回列表中的最大或最小元素。要求所有元素之间可以进行大小比较。
>>> d_list=['fgf','qdws','osido']
>>> max(a_list)
Traceback (most recent call last):
File "<pyshell#61>", line 1, in <module>
max(a_list)
TypeError: '>' not supported between instances of 'int' and 'str'
>>> max(d_list)
'qdws'
4.sum()
格式:sum(列表)
功能:对数值型列表的元素进行求和运算,对非数值型列表则出错
>>> a_list=[12,5,89,65]
>>> sum(a_list)
171
5.sorted()
格式:sorted(列表)
功能:对列表进行排序,默认是按照升序排序。该方法不会改变原列表的顺序。
>>> sorted(a_list)
[5, 12, 65, 89]
>>> a_list
[12, 5, 89, 65]
如果需要进行降序排序,在sorted()函数的列表参数后面增加一个reverse参数,其值等于True则表示降序排序,等于False则表示升序排序。但并不改变原列表顺序
>>> sorted(a_list,reverse=True)
[89, 65, 12, 5]
>>> a_list
[12, 5, 89, 65]
>>> sorted(a_list,reverse=False)
[5, 12, 65, 89]
6.sort()
格式:list.sort()
功能:对列表进行排序,排序后的新列表会覆盖原列表,默认为升序排序。
>>> a_list.sort()
>>> a_list
[5, 12, 65, 89]
如果需要降序排序,在sort()方法中增加一个reverse参数,其值等于True表示则降序排序,等于False则表示为升序排序
>>> a_list
[5, 12, 65, 89]
>>> a_list.sort(reverse=True)
>>> a_list
[89, 65, 12, 5]
7.reverse()
格式:list.reverse()
功能:对list列表中的元素进行翻转存放,不会对原列表进行排序。
>>> a_list=[5,2,89,43]
>>> a_list.reverse()
>>> a_list
[43, 89, 2, 5]