python列表插入append(), extend(), insert()用法详解

yipeiwu_com6年前Python基础

append(),extend(), insert()都是列表操作中常用的插入函数。其中前两个均接收一个参数,并插入到列表尾部。最后一个接收两个参数,将参数2插入到参数1之前。

本文主要讨论append()和extend()的区别。

这两者都是插入函数,但是不同的是,append()的参数被视为对象,而extend()中的参数则被视为列表

也就是说,append()函数会将所有的参数视为一个列表元素插入到列表尾部,看例子

一、append()

先创建一个空列表吧

>>> empty = [] 

>>> empty

[]

1.插入普通数字

2.插入字符串

3.插入列表

 

 再来看一下长度

  二、extend()

通过观察,发现append()函数不论传入什么,都只将其视为列表的一个元素进行尾部插入

而extend()函数与之恰好相反,extend()函数会将传入的参数视为列表,并将该列表的每个元素一一逐个插入到原列表尾部,,,如果该参数不是列表,将报错

1.传入非列表参数报错

 

 2.传入字符串 / 列表

 

 怎么样,很有意思吧,extend直接将 "code"的每个字符当做一个列表元素进行插入

那如果想要插入完整字符串呢

 

 只需要将字符串用[]括起来表明是一个列表就可以,如果想一次性插入多个,只需要在[]内添加要插入的字符串即可

三、insert()

同样先来看函数声明

 显然这里insert()是将要传入的object参数视为一个列表元素去处理

看一下效果

以上就是全部知识点内容,感谢大家的学习和对【听图阁-专注于Python设计】的支持。

相关文章

详解Django-restframework 之频率源码分析

详解Django-restframework 之频率源码分析

一 前言 经过权限判断之后就是进行频率的判断了,而频率的判断和权限又不一样,认证、权限和频率的执行流程都差不多,使用配置里面的相关类来进行判断。而不和认证和权限一样,频率的配置没有,查看...

在python中对变量判断是否为None的三种方法总结

三种主要的写法有: 第一种:if X is None; 第二种:if not X; 当X为None,  False, 空字符串"", 0, 空列表[], 空字典{}, 空元组(...

Python基于回溯法子集树模板解决野人与传教士问题示例

Python基于回溯法子集树模板解决野人与传教士问题示例

本文实例讲述了Python基于回溯法子集树模板解决野人与传教士问题。分享给大家供大家参考,具体如下: 问题 在河的左岸有N个传教士、N个野人和一条船,传教士们想用这条船把所有人都运过河去...

使用Python脚本将绝对url替换为相对url的教程

公司一个项目需要上传图片,一开始同事将图片上传后结合当前主机拼成了一个绝对的URL(http://192.168.1.1:888/m/getimg?filename=xxx.jp...

详解python函数传参是传值还是传引用

详解python函数传参是传值还是传引用

首先还是应该科普下函数参数传递机制,传值和传引用是什么意思? 函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题。基本的参数传递机制有两种:...