python教程:12种列表常用操作方法

都是基础知识,长久不用就会忘,温故知新,又来学习学习。相信很多人在编程的或者对一些程序处理的思维会用到,比如面试 python教程:12种列表常用操作方法_第1张图片(有写的不对的地方也请大家指正~

一、列表定义

列表是一个有序且可更改的集合。在Python中,列表用方括号表示。列表里面的内容可以是任意类型,可重复。

li = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 1, 1, 2, 3]
print(li)
['A', 'B', 'C', 'D', 'E', 'F', 'G', 1, 1, 2, 3]

二、向列表添加数据

1、追加 append方法

li = ['A', 'B', 'C']
li.append('E')  # 一次只能添加一个元素,并且只能在列表最后
print(li)
['A', 'B', 'C', 'E']

2、插入 insert方法,比append灵活,指定索引位,注意索引从0开始

li = ['A', 'B', 'C']
li.insert(0, 'M')  # 在首位插入M,两个参数
print(li)

['M', 'A', 'B', 'C']

三、删减列表中数据

1、弹出 pop方法

li = ['A', 'B', 'C']
li.pop()  # 根据索引进行删除,默认删除最后一个元素,一次只能删除一个
print(li)
['A', 'B']

 删除指定位置的数据

li = ['A', 'B', 'C']
li.pop(0)  # 删除第一位
print(li)
['B', 'C']

2、移除 remove方法

li = ['A', 'B', 'C']
li.remove('B')  # 删除列表中的值,一次只能删除一个
print(li)
['A', 'C']

3、操作语句del

li = ['A', 'B', 'C']
del li[0] #删指定索引的元素,需要注意是del是一种操作语句
print(li)
['B', 'C']

四、索引(即下标)

li = ['A', 'B', 'C']
print(li[0])  # 获取首位
print(li[-1])  # 获取末尾
A
C

五、切片,顾头不顾尾

li = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 1, 1, 2, 3]
print(li[0:2])  # 获取前两位
['A', 'B']

print(li[:])  # 获取全部
['A', 'B', 'C', 'D', 'E', 'F', 'G', 1, 1, 2, 3]


print(li[4:])  # 获取第5位到尾部
['E', 'F', 'G', 1, 1, 2, 3]

print(li[-3:-1])  # 获取倒数第3到倒数第2
[1, 2]

六、跳取,涉及步长

要点,找到索引位,步长为正顺着取,步长为负,逆向取

li = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 1, 1, 2, 3]
print(li[1:5:3])  # 从第2位到第6位,隔2个获取
['B', 'E']

print(li[0:5:2])  # 从开头到第6位,隔1个获取
['A', 'C', 'E']

print(li[5:0:-2])  # 从第6位开始,隔1个倒着获取
['F', 'D', 'B']

七、常用列表操作符

1、复制 *

li = ['A', 'B']
print(li * 2)  # 复制列表中的值追加到列表
['A', 'B', 'A', 'B']

2、拼接 +

li = ['A', 'B']
li2 = ['C', 'D']
print(li + li2)  # 两个列表拼接
['A', 'B', 'C', 'D']

八、统计列表某元素出现次数

li = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 1, 1, 2, 3]
print(li.count('A'))  # 统计元素A出现的次数
print(li.count(1))  # 统计元素1出现的次数
1
2

九、查找元素

如果列表中有重复元素,index方法只找首次出现的索引位

li = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 1, 1, 2, 3]
print(li.index('A'))  # 查找元素A首次出现的索引位置
print(li.index(1))  # 查找元素1首次出现的索引位置
0
7

十、反转列表

li = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 1, 1, 2, 3]
li.reverse()  # 反转列表元素
print(li)
[3, 2, 1, 1, 'G', 'F', 'E', 'D', 'C', 'B', 'A']

十一、列表排序

只对全数值有效,否则会报错

li = [1, 5, 2, 99, 6, 44, 66, 3, 34]
li.sort()  # 默认对列表数据进行从小到大排序
print(li)
[1, 2, 3, 5, 6, 34, 44, 66, 99]

li.sort(reverse=True)  # 对列表数据进行从大到小排序
[99, 66, 44, 34, 6, 5, 3, 2, 1]

#根据对列表元素反转的规律,从大到小排序也可以先sort后再reverse
#li.sort()
#li.reverse()

十二、拷贝列表

1、浅拷贝,改一个会影响另一个

#浅拷贝
l = ['A', 'B']
k = l
print(k)
l.append('C')
print(l)
print(k)  # 对l列表进行操作会同步影响k列表值

['A', 'B']
['A', 'B', 'C']
['A', 'B', 'C']

2、深拷贝,改一个不会影响另一个

# 深拷贝
m = ['A', 'B']
n = m[:]
print(n)
m.append('C')
print(m)
print(n)  # 对m列表进行操作不影响n列表值

['A', 'B']
['A', 'B', 'C']
['A', 'B']

3、copy函数,改一个不会影响另一个

m = ['A', 'B']
n = m.copy()
print(n)
m.append('C')
print(n)
['A', 'B']
['A', 'B']

4、内建方法list,本质可以理解为转成列表,改一个不会影响另一个

m = ['A', 'B']
n = list(m)
print(n)
m.append('C')
print(n)
['A', 'B']
['A', 'B']

你可能感兴趣的:(python,python,开发语言)