Python列表append和+的区别浅析

yipeiwu_com7年前Python基础

在python中使用列表的时候大家经常会需要向一个列表中添加一个元素,像下面这两种使用方法需要注意:

复制代码 代码如下:

t = [1, 2, 3]
t1 = t.append([4])
t2 = t + [4]

以上两种使用方式是有区别的,我们来看看实际运行的效果:

复制代码 代码如下:

>>> t = [1, 2, 3]
>>> t1 = t.append([4])
>>> t
[1, 2, 3, [4]]
>>> t1
>>>
>>> t2 = t + [4]
>>> t2
[1, 2, 3, [4], 4]
>>> t
[1, 2, 3, [4]]

可以看到使用t.append([4])后,实际是在t这个列表中增加,而非我们预期的在t1中增加,并且此时t1为None。

而使用t2 = t + [4]后,t2是在原用t1的基础上再增加一个元素4,而实际列表t中元素无变化。

结论:

使用append实际是修改一个列表,使用+实际是创建一个新的列表。

相关文章

对python3 Serial 串口助手的接收读取数据方法详解

其实网上已经有许多python语言书写的串口,但大部分都是python2写的,没有找到一个合适的python编写的串口助手,只能自己来写一个串口助手,由于我只需要串口能够接收读取数据就可...

Django中cookie的基本使用方法示例

前言 基于 Internet的各种服务系统应运而生,建立商业站点或者功能比较完善的个人站点,常常需要记录访问者的一些信息;论坛作为 Internet发展的产物之一,在 Internet...

python实现将文件夹内的每张图片批量分割成多张

python实现将文件夹内的每张图片批量分割成多张

一、说在前面        需求:有一张长为960,宽为96的图片,需要将其分割成10张96*96的图片并存放在另外一个文件夹下,通过手工分割耗时...

Python自动化运维之IP地址处理模块详解

实用的IP地址处理模块IPy 在IP地址规划中,涉及到计算大量的IP地址,包括网段、网络掩码、广播地址、子网数、IP类型等 别担心,Ipy模块拯救你。Ipy模块可以很好的辅助我们高效的...

Apache部署Django项目图文详解

Apache部署Django项目图文详解

前言 Django项目本身就可以启动运行,为什么还需要部署到Apache或者Nginx上呢?初学者都会遇到这个问题,我们来看看官方解释:It's intended only for us...