数据结构思维导图持续跟新中,点击查看 点击打开链接
列表的增、删、改、查,遍历
a、列表的元素的访问
语法:list[索引]
功能:访问列表的元素,注意如果索引超出,则会报错,如果索引值是负数,是从后面开始查询
list1 = [234,45,6,7,25,25,6] print(list1[8]) IndexError: list index out of range
b、元素下标的查询
语法:list.index(元素,start,stop)
功能:查询第一次匹配到元素的下标,如果没有则会报错
>>> list1 = [1, 2, 3] >>> list1.index(2) 1 >>> list1.index(4) Traceback (most recent call last): File "" , line 1, in <module> ValueError: 4 is not in list
c、元素个数的统计
语法:list.count(元素)
功能:查看元素在列表中出现的次数
>>> list1 = [1, 2, 3, 1] >>> list1.count(1) 2
d、列表的长度查询
语法:len(list)
功能:获取元素的个数
>>> list1 = [1, 2, 3, 1] >>> len(list1) 4
e.列表成员查询
语法:元素 in 列表
f.查询列表中元素最大最小值
语法:min(list) max(list)
a、通过下标删除
语法:list.pop(下标)
功能:删除指定下标的元素,并且返回元素的值,如果下标超出则会报错
>>>list1 = [1, 2, 3, 'hello', 'yes', 'no'] >>>print(list1.pop(2)) 3
b、通过元素删除
语法:list.remove(元素)
功能:删除匹配到的指定的第一个元素,没有返回值 如果没有指定的元素也会报错
>>>list1 = [1, 2, 3, 'hello', 'yes', 'no'] >>>print(list1.pop(2)) print(list1) None [1, 3, 'hello', 'yes', 'no']
c、情况列表
语法:list.clear()
功能:清空列表
>>>list1 = [1, 2, 3, 'hello', 'yes', 'no'] >>>list1.clear >>>print(list1) []
d、删除列表
语法:del list
功能:删除列表,列表已经过删除无法引用
a、list.append(元素)
语法:list.append(元素)
功能:在列表的最后追加一个元素,改变原来的列表
>>>list1 = [234,4124,124,123,3,3,4,] >>>list1.append(1) >>>print(list1) [234, 4124, 124, 123, 3, 3, 4, 1]
b、list.extend()
语法:list.extend(可迭代对象)
功能:在列表的末尾添加多个元素,【它是将可迭代对象,打碎然后插入,若是字符串则打碎成字符,进行插入】注意:extend中常用的是列表或者元组,set与dict也可以,插入字典的时候,只插入了key
>>>list1 = [1234,456,657,7,] >>>str1 = "123414afaf" >>>list1.extend(str1) >>>print(list1) [1234, 456, 657, 7, '1', '2', '3', '4', '1', '4', 'a', 'f', 'a', 'f']
c、在指定位置插入指定元素
语法:list.insert(index,object)
功能:在指定位置插入指定元素
>>>list1 = [1234,456,657,7,] >>>str1 = "123414afaf" >>>list1.insert(3,str1) >>>print(list1) [1234, 456, 657, '123414afaf', 7]
a.元素的更改通过直接赋值方式
语法:list[i] = "asdf"
b.顺序改变
i.list.reverse()
语法:list.reverse()
功能:将列表倒叙 ,注意这里操作的是原来的列表,
>>>list1 = [12,13,6,7,1,6,525,567] >>>list1.reverse() >>>print(list1) [567, 525, 6, 1, 7, 6, 13, 12]
ii.排序
语法:list.sort(reverse = False)
功能:列表排序,默认升序,当reverse为True,则降序排列 这里操作是原来的列表
>>>list1 = [12,13,6,7,1,6,525,567] >>>list1.sort() >>>print(list1) [1, 6, 6, 7, 12, 13, 525, 567]
语法:
for 变量名 in 列表名: 语句块 功能:依次把列表中的每一个元素取出 下标值 = 0 while 下标值 < 列表长度: 语句块 下标值 += 1 同时遍历下标和value 语法: for 下标,变量 in enumerate(列表) 语句
>>> list1 = ['hello', 78, '你好', 'good'] >>> for item in list1: ... print(item) ... hello 78 你好 good
>>> list1 = ['hello', 78, '你好', 'good'] >>> index = 0 >>>while index < len(list1): print(list1[index]) index += 1 hello 78 你好 good
>>> list1 = ['hello', 78, '你好', 'good'] >>> for index,item in enumerate(list1): ... print(index, item) ... 0 hello 1 78 2 你好 3 good