列表的增删改查

列表方法:增删改查
1.增:append(),extend(),insert()
2.删:pop(),remove(),clear(),del
3.改:修改单个元素,修改多个元素
4.查:index(),count(),切片,索引

一.增:增加元素


方法一:append

语法格式:列表名.append(元素)

 append()只接受一个参数,当参数为元组,列表,字典...时会将其作为一个整体添加到列表末尾.

在例子中["魏"]是一个列表,添加时以列表形式,而"十一"是一个字符串形式,添加时则是以字符串的形式添加

xing = ['张', '王', '李', '赵', '郭']
xing.append(["魏"])
xing.append(('许',"艺"))
xing.append(['许',"艺"])
xing.append({"1":"吴","2":"史"})
xing.append("十一")
print(xing)
['张', '王', '李', '赵', '郭', ['魏'], ('许', '艺'), ['许', '艺'], {'1': '吴', '2': '史'}, '十一']

方法二:extend

语法格式:列表名.extend(元素)

extend()可以接受一个可迭代对象(如列表、元组、集合、字符串等),并将其中的每个元素依次添加到原列表的末尾。

1.当可迭代对象是单个元素时:

会将其所包含的元素一个一个的添加到列表结尾.

xing = ['张', '王', '李', '赵']
xing.extend('许常郭')  # 添加序列类型为单一字符串,所以分开,相当于三个数据
xing.extend(['许常郭','巍淮'])  
xing.extend(('许常郭','魏耿'))  
print(xing)
['张', '王', '李', '赵', '许', '常', '郭', '许常郭', '巍淮', '许常郭', '魏耿']

2.当参数是嵌套的数据结构(列表中的列表)

此例子中列表里包含了一个列表,一个元组共两个元素,在使用extend()添加时会将这两个元素分别作为一个整体进行添加,效果类似于append()

xing = ['张', '王', '李']
xing.extend([['许常郭','巍淮'],('吴越','吴刚')])
print(xing)
['张', '王', '李', ['许常郭', '巍淮'], ('吴越', '吴刚')]

方法三:insert

语法格式:列表名.insert(索引,元素)

insert(index,element) 会在index的位置插入element,后面的元素依次向后如果指定的索引超出了列表的当前长度,Python 会将元素添加到列表的末尾

次例子中会在索引值为2的地方插入"许",原索引值为2的"李"在插入后索引值会变为3

xing = ['张', '王', '李', '赵', '郭']
xing.insert(2, '许')
print(xing)
['张', '王', '许', '李', '赵', '郭']

二.删:删除元素


方法一:pop

语法格式:列表名.pop(索引)

 pop(index):删除指定索引(index)的元素,当不输入索引(index)时默认删除最后一个

1.当指定索引时:

在该例子中删除了索引为-2(也是索引为3)的元素

position = ['山东省', '淄博市', '济南市', '菏泽市', '济宁市']
data=position.pop(-2)  # 删除索引值为-2的元素
print(data)  #查看被删除的元素
print(position)  #查看删除后的列表
菏泽市
['山东省', '淄博市', '济南市', '济宁市']

2.当不指定索引时:

删除列表最后一个元素,默认删除索引为-1的元素

position = ['山东省', '淄博市', '济南市', '菏泽市', '济宁市']
data=position.pop()  # 默认删除最后一个元素
print(data)  #查看被删除的元素
print(position)  #查看删除后的列表
济宁市
['山东省', '淄博市', '济南市', '菏泽市']

方法二:remove

语法格式:列表名.remove(元素)

remove(value):删除一个指定的元素,当列表中该元素重复出现时,从左侧开始删除(只删除一个),因为列表中的元素被删除,所以该元素后面的元素索引会发生改变.

position = ['山东省', '淄博市', '山东省', '德州市', '烟台市', '青岛市']
print(position.index("德州市")) #查看删除前"德州市"的索引
position.remove('山东省')  # 从左侧开始删除
print(position)  #输出删除后的列表
print(position.index("德州市"))  #查看删除后"德州市"的索引
3
['淄博市', '山东省', '德州市', '烟台市', '青岛市']
2

方法三:clear

语法格式:列表名.clear()

 clear():会清除列表中的所有元素

position = ['山东省', '淄博市', '淄博六中', '14班', '许译丹']
position.clear()
print(position)
[]

方法四:del

1.使用索引时

语法格式:del 列表名[初始位置:结束位置:步长]

 会按照索引格式进行删除

position = ['山东省', '淄博市', '济南市', '青岛市', '威海市']
del position[0:3]  # 切片
print(position)
position = ['山东省', '淄博市', '济南市', '青岛市', '威海市']
del position[::2]  # 步长
print(position)
del position[:]  #清空列表
print(position)
['青岛市', '威海市']
['淄博市', '青岛市']
[]

2.不使用索引时

 语法格式:del 列表名

 会将整个列表删除,输出时会显示NameError,既表示此列表已被删除

position = ['山东省', '淄博市', '济南市', '青岛市', '威海市']
del position
print(position)
NameError: name 'position' is not defined

三.改:修改元素

方法一:修改单个元素

语法格式:列表名[索引]=新数据

修改单个数据通过索引进行修改 

1.一对一

 一对一既将列表中的一个元素改为一个新元素

该例子中将索引值为1的"意"改为"情"

poem = ['爱', '意', '随', '风', '起', '风', '止', '意', '难', '平']
poem[1] = '情'
print(poem)  # 修改单个数据,一对一
['爱', '情', '随', '风', '起', '风', '止', '意', '难', '平']

 2.一对多

一对多既将列表中的一个元素改为多个元素(往往是列表,元组,字典...形式)

该例子中将索引值为1的"意"改为列表["情","请"],将索引值为2的"随"改为字典{"1":2,"2":3}

poem = ['爱', '意', '随', '风', '起', '风', '止', '意', '难', '平']
poem[1] = ['情','请']
poem[2] = {"1":2,"2":3}
print(poem)  # 修改多个数据,多对一,变为序列
['爱', ['情', '请'], {'1': 2, '2': 3}, '风', '起', '风', '止', '意', '难', '平']

 方法2:修改多个数据

修改多个数据通过切片进行操作

该例子通过切片[:2]将列表中的["爱","意"]修改为["情","请","一"]

poem = ['爱', '意', '随', '风', '起', '风', '止', '意', '难', '平']
poem[:2] = ['情', '请',"一"]  #修改后的数据个数大于原数据
print(poem)  # 修改多个数据
['爱', '意']
['情', '请', '一', '随', '风', '起', '风', '止', '意', '难', '平']

 该列表中的元素为数值时

该例子将原列表中切片为[:2]的[1,2]修改为[1,3,3]

number = [1, 2, 3, 4, 5, 6, 7]
print(number[:2])
number[:2] = [1, 3, 3]
print(number)
[1, 2]
[1, 3, 3, 3, 4, 5, 6, 7]

四.查:查看元素


方法一:索引访问

语法格式:列表名[索引]

 输出列表中指定索引下的元素

position = ['山东省', '淄博市', '济南市', '青岛市', '威海市']
print(position[2])
济南市

方法二:切片

语法格式:列表名[起始位置:终止位置:步长]

position = ['山东省', '淄博市', '济南市', '青岛市', '威海市']
print(position[1:3])
print(position[1:5:2])
['淄博市', '济南市']
['淄博市', '青岛市']

 方法三:index

语法格式:列表名.index(元素名称,起点值)

用于输出该元素在列表中对应的索引

position = ['山东省', '淄博市', '威海市','济南市', '青岛市', '威海市']
print(position.index('威海市'))  #当没有起点值时,默认从最左侧开始
print(position.index('威海市',3))  #获取索引值大于3的'威海市'索引值
2
5

 方法四:count

语法格式:列表名.count(元素)

 用于计算该列表中指定元素出现的次数

position = ['山东省', '淄博市', '威海市','济南市', '青岛市', '威海市']
print(position.count('威海市'))
2
1. 增加元素: a. append()方法:在列表末尾添加一个元素。 ``` fruits = ['apple', 'banana'] fruits.append('orange') print(fruits) # ['apple', 'banana', 'orange'] ``` b. insert()方法:在指定位置插入一个元素。 ``` fruits = ['apple', 'banana'] fruits.insert(1, 'orange') print(fruits) # ['apple', 'orange', 'banana'] ``` c. extend()方法:将一个列表的元素添加到另一个列表的末尾。 ``` fruits1 = ['apple', 'banana'] fruits2 = ['orange', 'kiwi'] fruits1.extend(fruits2) print(fruits1) # ['apple', 'banana', 'orange', 'kiwi'] ``` 2. 删除元素: a. remove()方法:删除列表中的指定元素。 ``` fruits = ['apple', 'banana', 'orange'] fruits.remove('banana') print(fruits) # ['apple', 'orange'] ``` b. pop()方法:删除列表中指定位置的元素。 ``` fruits = ['apple', 'banana', 'orange'] fruits.pop(1) print(fruits) # ['apple', 'orange'] ``` c. del语句:删除列表中指定位置的元素或整个列表。 ``` fruits = ['apple', 'banana', 'orange'] del fruits[1] print(fruits) # ['apple', 'orange'] del fruits print(fruits) # NameError: name 'fruits' is not defined ``` 3. 修改元素: a. 直接赋值:通过索引直接修改列表中的元素。 ``` fruits = ['apple', 'banana', 'orange'] fruits[1] = 'kiwi' print(fruits) # ['apple', 'kiwi', 'orange'] ``` b. 切片赋值:通过切片修改列表中的一部分元素。 ``` fruits = ['apple', 'banana', 'orange'] fruits[1:3] = ['kiwi', 'grape'] print(fruits) # ['apple', 'kiwi', 'grape'] ``` 4. 查找元素: a. in关键字:判断一个元素是否在列表中。 ``` fruits = ['apple', 'banana', 'orange'] print('apple' in fruits) # True print('kiwi' in fruits) # False ``` b. index()方法:获取一个元素在列表中的索引。 ``` fruits = ['apple', 'banana', 'orange'] print(fruits.index('banana')) # 1 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值