python 清空list的几种方法

本文介绍清空list的四种方法,以及 list=[ ] 和 list.clear() 在使用中的区别(坑)。

1、使用clear()方法

lists = [1, 2, 1, 1, 5]
lists.clear()
print(lists)
>>>[]

2、重新初始化列表:初始化该范围内的列表,初始化列表没有值,即大小为0的列表

lists = [1, 2, 1, 1, 5]
lists = []
print(lists)
>>>[]

3、使用 “ * = 0 ”

lists = [1, 2, 1, 1, 5]
lists *= 0
print(lists)
>>>[]

4、使用 del: del可以用来清除范围中的列表元素,如果我们不给出范围,则删除所有元素

lists = [1, 2, 1, 1, 5]
del lists[:]
print(lists)
>>>[]
lists2 = [1, 2, 1, 1, 5]
del lists2[:2]
print(lists2)
>>>[1, 1, 5]

但是在使用 list=[ ] 和 list.clear() 的时候,遇到过一个问题:

先使用: list.clear()

first = []
last = []
lists_more = [1, 2, 3, 4, 5, 6]

for i in lists_more:
    first.append(i)
    last.append(first)
    first.clear()

print(last)
>>>[]

而使用 list=[ ] :

first = []
last = []
lists_more = [1, 2, 3, 4, 5, 6]

for i in lists_more:
    first.append(i)
    last.append(first)
    first = []

print(last)
>>>[[1], [2], [3], [4], [5], [6]]

因此,实际使用中,列表的初始化清空和使用 clear() 清空 二者有区别,涉及到内存空间的引用问题,在面对有列表的复用问题时需要多加小心,最好采用初始化清空。

参考地址:https://www.geeksforgeeks.org/different-ways-to-clear-a-list-in-python/

原文地址:https://www.cnblogs.com/BackingStar/p/10986775.html

时间: 2024-10-10 03:11:48

python 清空list的几种方法的相关文章

清空StringBuilder的三种方法及效率

清空StringBuilder的三种方法及效率 大家知道对于字符串频繁拼接是使用stringbuilder.Append方法比使用string+=方法效率高很多,但有时需要清空stringbuilder时却不知道怎么清空,因为它没有clear或empty的方法.那用什么方法呢?在网上搜了一下大概一下三种方法. 1.Remove 例: StringBuilder val = new StringBuilder(); val.Append("...."); val.Remove(0,val

Python下载网页的几种方法

get和post方式总结 get方式:以URL字串本身传递数据参数,在服务器端可以从'QUERY_STRING'这个变量中直接读取,效率较高,但缺乏安全性,也无法来处理复杂的数据(只能是字符串,比如在servlet/jsp中就无法处理发挥java的比如vector之类的功能). post方式:就传输方式讲参数会被打包在数据报中传输,从CONTENT_LENGTH这个环境变量中读取,便于传送较大一些的数据,同时因为不暴露数据在浏览器的地址栏中,安全性相对较高,但这样的处理效率会受到影响. get

Python字符串拼接的6种方法

Python字符串拼接的6种方法: 1. 加号 第一种,有编程经验的人,估计都知道很多语言里面是用加号连接两个字符串,Python里面也是如此直接用 “+” 来连接两个字符串: 1 print 'Python' + 'Tab' 结果: 1 PythonTab 2. 逗号 第二种比较特殊,使用逗号连接两个字符串,如果两个字符串用“逗号”隔开,那么这两个字符串将被连接,但是,字符串之间会多出一个空格: 1 print 'Python','Tab' 结果: 1 Python Tab 3. 直接连接 第

python遍历数组的两种方法的代码

工作过程中,把开发过程中较好的一些内容段备份一下,下面内容是关于python遍历数组的两种方法的内容,希望对小伙伴有用途. colours = ["red","green","blue"] for colour in colours: print colour # red # green # blue 下面的方法可以先获得数组的长度,然后根据索引号遍历数组,同时输出索引号 colours = ["red","gree

Python调用系统命令的6种方法

Python调用系统命令的6种方法在Python中调用系统命令一般使用os或者subprocess模块,下面介绍Python中最常用的6种调用系统命令的方法.1.os.system()该函数返回命令执行结果的返回值,system()函数在执行过程中进行了以下三步操作:1.fork一个子进程:2.在子进程中调用exec函数去执行命令:3.在父进程中调用wait(阻塞)去等待子进程结束.返回0表示命令执行成功,其他表示失败.用法:os.system("command")2.os.popen

分析python程序运行时间的几种方法

最早见过手写的,类似于下面这种: 1 import datetime 2 3 def time_1(): 4 begin = datetime.datetime.now() 5 sum = 0 6 for i in xrange(10000000): 7 sum = sum + i 8 end = datetime.datetime.now() 9 return end-begin 10 11 print time_1() 输出如下: ? Python python time_1.py 0:00

python下载文件的三种方法

Python开发中时长遇到要下载文件的情况,最常用的方法就是通过Http利用urllib或者urllib2模块. 当然你也可以利用ftplib从ftp站点下载文件.此外Python还提供了另外一种方法requests. 下面来看看三种方法是如何来下载zip文件的:方法一: import urllib import urllib2 import requests print "downloading with urllib" url = 'http://***/test/demo.zip

python安装pyserial的几种方法

此教程使用于ubuntu下 python版本为2.7 pyserial为python的串口程序,一共有三种方法安装 1.pip install pyserial    不推荐 2.sudo apt-get install python-serial   不推荐 3.到官网下载安装包,自己编译,推荐!!! https://pypi.python.org/pypi/pyserial/ 解压tar xzvf xxxxxx.tar.gz cd pyserial sudo python setup.py

python list排序的两种方法及实例讲解

对List进行排序,Python提供了两个方法 方法1.用List的内建函数list.sort进行排序 list.sort(func=None, key=None, reverse=False) Python实例: >>> list = [2,5,8,9,3] >>> list [2,5,8,9,3] >>> list.sort() >>> list [2, 3, 5, 8, 9] 方法2.用序列类型函数sorted(list)进行排