Python四种常用管理列表的方法及举例 remove pop extend insert

#  列表中 添加数据 动态扩展 采用append方法,解释器根据需要分配内存;
#  列表中 删除数据 动态删除 解释器会根据需要回收内存;

接下来介绍四种常用管理列表的 方法:

 remove 
 pop
 extend
 insert

1.remove

//remove 取一个值作为唯一参数
// remove 方法会从列表中删除指定数据值的第一次出现.
// 如果再列表中找到了这个数据值,就会从列表中删除包含这个值的对象(同时列表的大小减1).
// 如果再列表中没有找到这个数据值,解释器就会产生一个错误(后面会介绍有关的更多内容)

eg1:

num = [1,2,3,4]
num.remove(1)
num

# [2, 3, 4]

eg2:

num = [1,2,3,4,1]
num
num.remove(1)

# 1 不是一个索引值,而是要删除的值.
# [2, 3, 4, 1]

num = [1,2,3,4,5,6]
num.remove(7)

# ValueError: list.remove(x): x not in list

2.pop方法

从列表中弹出对象
 如果你知道想要删除的对象的值,remove方法很好用.
 不过通常情况下,你可能想从某个特定的索引槽删除一个对象.
 为此,Python提供了pop方法:
 

 pop 取一个可选的索引值作为参数.
 pop 方法根据对象的索引值从现有列表删除和返回一个对象.
 如果调用pop时没有指定索引值,将删除和返回列表中的最后一个对象.
 如果制定了一个索引值,则会删除和返回那个位置上的对象.
 如果列表为空或者调用pop时指定了一个不存在的索引值,解释器会产生一个错误(后面将介绍有关的更多内容)

 如果愿意,可以把pop返回的对象赋值给一个变量,在这种情况下,对象会保留下来.
 不过,如果没有弹出的对象赋给一个对象,它的内存就会被回收,这个对象将消失

eg1:

num = [1,2,3,4,5]
num.pop(0)
num
# [2, 3, 4, 5]

eg2:

pops = num.pop(0)
pops
# 2

将弹出并删除的值 赋给变量pops

num
# [3, 4, 5]

eg3:

num.pop()
# 5
# 不给pop方法执行索引的位置,默认删除最后数据值(对象)

num
# [3, 4]

3.extend

# extend
# 用对象扩展列表
# 我们已经知道可以用append方法向现有列表中添加单个对象,另外还有一些办法可以向列表中动态添加数据;

# extend: 取一个对象列表作为唯一参数
# extend方法接收第二个列表,将其中的各个对象增加到现在列表.
# 如果要将两个列表合并为一个列表,这种方法非常实用:

eg1:

num
# [3, 4]

num.extend([1,2])
# 向num列表中添加列表 [1,2]

num
# [3, 4, 1, 2]

eg2:

num.extend([])
# 向num列表中添加一个空列表

num
# [3, 4, 1, 2]

eg3:

num.append([])
# 如果通过append方法添加一个空列表呐

num
# [3, 4, 1, 2, []]
# 添加成功,因为append方法是添加单个对象,而extend是进行合并操作

4.insert

# append and extend 对列表的操作都是在最右边的位置增加对象
# 有时,你可能希望把对象增加到列表开头(最左端)或者任意位置,如果这样
# 使用insert方法

eg1:

num = [2,3,4]
num.insert(0,1)
# 在索引为0的位置添加对象1
num
# [1, 2, 3, 4]

eg2:

num.insert(2,'insert_two')
# 在索引为3的位置添加 'insert_two'
num
# [1, 2, 'insert_two', 3, 4]

eg3:

num.insert(3,"string")
# 在索引为3的位置添加'string'
num
# [1, 2, 'insert_two', 'string', 3, 4]
# 以上4点是对列表的 remove pop extend insert 方法的介绍和举例
如果以上,你还觉得不够明了
那么可在编辑器下输入以下命令,可能直接请求帮助文档。
help(list)
help(list.append)

5.挑战的时候到了:

# tranning
# 把字符串"Don't panic" 转换为字符串 "on tap"
# 用以上方法

phrase = “Don’t panic!”
plist = list(phrase)
print(phrase)
print(plist)

——————
——————
——————
new_phrase = ‘’.join(plist)
print(plist)
print(new_phrase)

现在执行会输出
Don't panic!
['D', 'o', 'n', "'", 't', ' ', 'p', 'a', 'n', 'i', 'c', '!']
['D', 'o', 'n', "'", 't', ' ', 'p', 'a', 'n', 'i', 'c', '!']
Don't panic!
# 作答
# trannning.
phrase = "Don't panic!"
plist = list(phrase)
print(phrase)
# Don't panic!
print(plist)
# ['D', 'o', 'n', "'", 't', ' ', 'p', 'a', 'n', 'i', 'c', '!']
# 去除0位置  35位  后4位
plist.remove('D')
# 去除0位置
for i in range(4):
    plist.pop()
# 去除后4print(plist)
# ['o', 'n', "'", 't', ' ', 'p', 'a']
plist.pop(2)
print(plist)
# 第3位去除
# ['o', 'n', 't', ' ', 'p', 'a']


# 交换最后两位的位置
# plist.pop(),plist.pop()
# 弹出a 弹出p
plist.extend([plist.pop(),plist.pop()])
print(plist)
# ['o', 'n', 't', ' ', 'a', 'p']

# 去除空格
# plist.pop(3)
# 将空格插入到第二位
plist.insert(2,plist.pop(3))
print(plist)
# ['o', 'n', ' ', 't', 'a', 'p']

new_phrase = ''.join(plist)
print(plist)
# ['o', 'n', ' ', 't', 'a', 'p']
print(new_phrase)
# on tap
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值