列表
1.列表格式:li = ['1','2','3']
2.列表可以嵌套任何类型,可以是数字,字符串,列表,布尔值...
3.列表取值,可以索引取值,切片取值,for循环遍历
# 切片取值,结果小于三,不包含位置3 li = ['1','3',['5','zhu','jin','hua'],'中国'] v = li[1:3] print(v) # 索引取值 v1 = li[1] print(v1) # for循环 for i in li: print(i) # in方法判断 v2 = ['5','zhu','jin','hua'] in li print(v2)
4.列表元素可以被修改,内部以链表形式存储,修改后重新指向新坐标
5.支持索引删除,修改
# 索引删除 li = ['1','3',['5','zhu','jin','hua'],'中国'] del li[2] print(li) # 索引修改 li[0] = 'zhangsan' print(li)
6.切片删除,修改同理
常用的方法:
- 计算列表中元素出现的个数count()
# 计算元素出现的次数 li = ['1','1',['5','zhu','jin','hua'],'中国'] v = li.count('1') print(v)
- 列表追加:append()
li = ['1', '1', ['5', 'zhu', 'jin', 'hua'], '中国', 'z'] li.append(['canglong','wohu']) print(li)
- 列表追加:extend()
li = ['1', '1', ['5', 'zhu', 'jin', 'hua'], '中国', 'z'] li.extend(['canglong','wohu']) print(li)
# extend和append两者区别 # append可以添加单个元素,也可以添加可迭代对象,但是extend只能添加可迭代对象: #在添加可迭代对象时,append在添加后不改变添加项的类型,添加之前是什么类型,添加之后就是什么类型;而extend在添加后,会将添加项进行迭代,迭代的元素挨个添加到被添加的数组中:
- 清空列表clear()
li = ['1', '1', ['5', 'zhu', 'jin', 'hua'], '中国', 'z'] li.clear() print(li)
- 复制列表copy(),可以用新的变量接收
# 复制列表,可以用一个新的变量接收 li = ['1', '1', ['5', 'zhu', 'jin', 'hua'], '中国', 'z'] li2 =li.copy()
- 根据数值获取索引,左边优先index()
# 根据值获取当前值索引位置(左边优先) li = ['1', '1', ['5', 'zhu', 'jin', 'hua'], '中国', 'z'] v = li.index('z') print(v)
- 在指定位置插入元素insert()
li = ['1', '1', ['5', 'zhu', 'jin', 'hua'], '中国', 'z'] li.insert(2,'第三个位置') print(li)
- 删除某个值(1.指定索引;2. 默认最后一个),并获取删除的值pop()
li = ['1', '1', ['5', 'zhu', 'jin', 'hua'], '中国', 'z'] li.pop() #默认删除最后一个 li.pop('1') #删除指定位置
- 删除列表中的指定值,左边优先remove()
li = ['1', '2', ['5', 'zhu', 'jin', 'hua'], '1', 'z'] li.remove('1') print(li)
- 当前列表进行翻转reverse()
li = ['1', '2', ['5', 'zhu', 'jin', 'hua'], '1', 'z'] li.reverse() print(li)
- 当前列表进行排序,正序和倒序
#列表的排序 li = [11,44, 22, 33, 22] li.sort() li.sort(reverse=True)#倒序 print(li)