当前位置:首页 » 编程语言 » python清空列表

python清空列表

发布时间: 2022-12-19 22:10:31

python中del 语句的用法

python的del不同于C的free和C++的delete。

由于python都是引用,而python有GC机制,所以,del语句作用在变量上,而不是数据对象上。

㈡ 如何把列表外的列表移除python

python的列表list可以用for循环进行遍历,实际开发中发现一个问题,就是遍历的时候删除会出错,例如
l = [1,2,3,4]
for i in l:
if i != 4:
l.remove(i)
print l
这几句话本来意图是想清空列表l,只留元素4,但是实际跑起来并不是那个结果。再看下面,利用index来遍历删除列表l

l = [1, 2, 3, 4]
for i in range(len(l)):
if l[i] == 4:
del l[i]

print l
这样没问题,可以遍历删除,但是列表l如果变为 l = [1,2,3,4,5]
如果还是按照上面的方法,设想一下,range开始的范围是0-4,中间遍历的时候删除了一个元素4,这个时候列表变成了= [1,2,3,5],这时候就会报错了,提示下标超出了数组的表示,原因就是上面说的遍历的时候删除了元素

所以python的list在遍历的时候删除元素一定要小心

可以使用filter过滤返回新的list

l = [1,2,3,4]
l = filter(lambda x:x !=4,l)
print l

这样可以安全删除l中值为4的元素了,filter要求两个参数,第一个是规则函数,第二个参数要求输入序列,而lambda这个函数的作用就是产生一个函数,是一种紧凑小函数的写法,一般简单的函数可以这么些

或者可以这样
l = [1,2,3,4]
l = [ i for i in l if i !=4]//同样产生一个新序列,复值给l
print l

或者干脆建立新的list存放要删除的元素
l = [1,2,3,4]
dellist = []
for i in l:
if i == 4:
dellist.append(i)
for i in dellist:
l.remove(i)
这样也能安全删除元素
所以要遍历的时候删除元素一定要小心,特别是有些操作并不报错,但却没有达到预期的效果

上面说到产生新序列,赋值等等,用python的id()这个内置函数来看对象的id,可以理解为内存中的地址,所以有个简要说明
如果
l = [1,2,3,4]
ll = l
l.remove(1)
print l//肯定是[2,3,4]
print ll//这里会是什么?
如果用id函数查看的话就发现
print id(l),id(ll)
打印出相同的号码,说明他们其实是一个值,也就是说上面的print ll将和l打印的一样,所以python有这种性质,用的时候注意一下就行了

㈢ Python如何删除列表的值:如:a=[1,2,1,3,1,1] 删除全部1的值,一个都不留

a=[1,2,1,3,1,1]
a=[iforiinaifa!=1]

㈣ python列表的特点

列表的特点

1.list(列表)是python中使用最频繁的数据类型,在其他的语言中通常叫做数组

2.专门用于存储一串信息

3.列表用[]定义,列表中的数据用“,”分割

4.列表的索引是从0开始

列表的操作

假设列表名为list

㈤ python基础之序列类型的方法——列表&元组

首先登场的选手是python的列表,列表属于可变类型,所以它将有完整的增删改查方法,让我们一起来看看具体是什么。

增,顾名思意就是可以对列表进行新增元素的操作,python的列表提供了三种新增元素的操作,分别是:append() ,insert(), extend()

首先是append(),它可以将一个元素追加到列表的末尾。
举个栗子:

上述代码中,我们使用的是li.append('新增内容')的方式来为列表添加元素
li.append()使列表li调用自身的方法append(),这样就可以在列表的末尾添加一个新的元素。

接下来是insert(),append()是排队,那insert()就是插队的意思啦,它可以将一个元素插入到列表的自定位置:
li.insert(索引,元素)

这样就将字符串helloworld插入到了列表的第四个位置里。

上面两个方法是对单个元素进行增加,如果我们需要增加多个元素怎么办?
那就可以使用我们的extend()来进行添加,extend()可以将序列中的每个元素添加到末尾:

上面的代码先定义了两个列表l1和l2,然后使用l1.extend(l2),将l2的每个元素添加到了l1的末尾。

增加讲完了,接下来进行删除操作,删除也有对应的四个方法:del(),pop(),remove(),clear()

del()是单独的方法,不需要通过列表本身来进行调用,可以直接使用:

上述代码删除了li[0],但是请注意,如果不进行索引的话,默认会将这个变量删除,请谨慎使用:

这就是删除了整个变量,再打印这个变量时就会提示变量未定义

pop()方法不带参数的话删除默认删除最后一个元素,带参数的话则删除指定的下标值:

pop()还有个神奇的地方,它可以让你需要删除的参数取出来继续使用,使用完了再进行删除:

上述代码使用pop()删除了第一个元素,然后使用第一个元素进行了一个简单的判断,说明pop()可以为我们返回删除的元素,让我们先使用,使用完再删除

remove()用来删除一个指定元素,无返回值,无法使用下标删除:

上述代码使用remove()删除了一个元素l

clear()用于清空列表,与del不同的是,它会为我们保留空列表,而不会把变量都删除:

上述代码清除了列表后,保留了空列表

改的方法就比较简单,直接索引出下标重新赋值即可:

这里就对li[0]进行了重新赋值

有通过index查询指定元素返回对应下标,也可以使用count来计算该元素出现过的次数:

除了增删改查,列表中还有其他的方法复制()、倒叙排列reverse()、从小到大排列sort()

使用li.(),再用一个变量接收复制的列表,就可以实现复制出一个新的列表来

sort()方法可以将数字类型的进行从小到大的排列,一般也用于同类型的排列

元组作为不可变类型,只能查和删,如果需要其他操作需要转换成列表

只能删除整个元组,无法使用下标值,删除后再使用会提示没有定义变量

元组只有查和删的方法,如果需要修改应先转成列表修改再转回元组,但是不建议这么做,因为修改过的元组就已经不是原来的那个元组了,而且设置元组也是为了这组数据不希望受到修改

以上就是关于列表&元组的方法了,有兴趣的小伙伴可以自己尝试一下。
如果有哪些错误或者不好的地方,还请各位大佬指出来,我会虚心接受并修改错误,谢谢!

㈥ python字典转换为list后选中最后一个值

设为星标,第一时间获取更多干货

在python中,数据类型主要由以下几类组成:

列表(list): [a, b]

元组(tuple):(a, b, )

集合(set): {a, b}

字典(Dictonary): {a: ‘aaa’, b: ‘bbb’}

1. 列表

列表(List)

列表是Python中使用最频繁的数据类型,专门用于存储一串信息

列表是一种有序和可更改的集合。允许重复的元素

列表使用[]定义,元素之间使用,分隔。例:[1,2, ...]

列表的索引从位置0开始

索引就是元素在列表中的位置编号,索引又可以被称为下标

注意:从列表中取值时,如果超过索引范围,程序会报错

虽然列表可以存储不同类型元素,但是曰常中一般存储相同类型的元素

如何使用列表

列表[索引]: 从列表中取值,获取指定索引的元素

列表[开始索引:结束索引:步长]:

返回从开始索引到结束索引-1的列表,如果设置步长,按步长跳过元素

len(列表): 获取列表的长度

元素 in 列表: 判断元素是否在列表中

列表.count(元素): 返回指定元素在列表中的个数

列表.index(元素): 返回指定元素在列表中第一次出现的索引,查找失败时报错

列表.sort(): 从小到大排序,括号内增加reverse=True ,则是从大到小排序

列表_reverse(): 逆序(反转)列表

列表.clear(): 清空列表

Eg:

# 0 init listL = [1, 2, 3, 4, 5, 7, 6]# 1 index valueL[1] # --> 2# 2 stepL[2: 5: 2] # --> [3, 5]# 3 lengthlen(L) # --> 6# 4 in6 in L # ---> True8 in L # ---> False# 5 countL.count(1) # ---> 1# 6 indexL.index(2) # ---> 1# 7 sortL.sort() # ---> [1, 2, 3, 4, 5, 6, 7] 注意:会改变自己 返回None # 8 reverseL.reverse() # 由于第7步改变了自己, 这里变成[7, 6, 5, 4, 3, 2, 1] 会改变自己 返回None # 9. clearL.clear() # ---> []
列表特有的一些使用方法

L = [1, 2, 3, 4, 5]
列表[索引]=元素:修改指定索引的元素,索引不存在会报错

L[2] = 7 L # ---> [1, 2, 7, 4, 5]
列表 . append(元素):在列表的末尾追加元素

L.append(6)L # ---> [1, 2, 7, 4, 5, 6]
列表 . insert(索引,元素):在指定索引位置插入元素,索引不存在时在末尾追加

L.insert(3, 9)L # ---> [1, 2, 7, 4, 9, 5, 6]
列表.pop(索引):

删除并返回指定索引的元素,未指定索引时删除最后一项,索引不存在时报错

L.pop(3) # 4, L 变成[1, 2, 7, 9, 5, 6]L.pop() # 6, L 变成[1, 2, 7, 9, 5]
列表 . remove(元素):删除列表中第一个出现的指定元素,查找失败时报错

L.remove(2) # L 变成[1, 7, 9, 5]
del 列表[索引]: 删除指定索引位置的元素,索引不存在时报错

del L[3] # L 变成[1, 7, 9]
列表l.extend(列表2): 将列表2拼接在列表1后

L.extend([8, 9, 10]) L # L 变成[1, 7, 9, 8, 9, 10], 等价于 L = L + [8, 9, 10]
2. 元组

元组(Tuple)

元组是一种有序且不可更改的集合, 允许重复的成员

元组与列表的类似,不同之处在于元组元素不可修改

元组使用()定义,元素之间使用,分隔。例:(a, b, …)

元组中只包含一个元素时,可以省略(),只需要在元素后加逗号

init_tuple = 100,type(init_tuple) # ---> tuple# ---- 另外写法init_tuple = (100, ) # 逗号一定要加
注意:如果一个非元组类型的数据突然变成元组,检查是不是误加了逗号

集合与元组的通用方法

元组[索引]:从元组中取值,获取指定索弓丨的元素

元组[开始索引:结束索引:步长]:

返回从开始索引到结束索引-1的元组,如果设置步长,按步长跳过元素

len(元组):获取元组的长度

元素in元组:判断元素是否在元组中

元组.count(元素):返回指定元素在元组中的个数

元组.index(元素):返回指定元素在元组中第一次出现的索引,查找失败会报错

元组和列表之间的转换

list(元组):将元组转换成列表

tuple(列表): 将列表转换成元组

3. 集合

集合(Set)

集合是一种无序和无索引的序列。没有重复的元素

集合会自动删除重复的元素,一般应用于去重、交并差运算场景

集合使用{}定义,元素之间使用,分隔。例:{a, b, …}

集合与列表的通用方法

len(集合):获取集合的长度

元素in集合:判断元素是否在集合中

集合.clear(): 清空集合

集合特有的使用方法

s = {1, 2, 3}

集合.add(元素):将元素添加到集合中

s.add(5) # ---> {1, 2, 3, 5}
集合1.update(集合2): 添加新的元素或集合到当前集合中

s.add{4, 5, 6} # ---> {1, 2, 3, 5, 4, 6}
集合.remove(元素): 删除指定的元素,元素不存在时报错

s.remove(4) # ----> {1, 2, 3, 5, 6}
集合1&集合2 : 交集,获得由集合1和集合2中都存在的元素组成的新集合

s & {3, 4, 5} # ---> {3, 5}
集合1|集合2: 并集,获得集合1和集合2中所有元素的新集合

s | {8, 9, 10} # ---> {1, 2, 3, 5, 6, 8, 9, 10}
集合1 - 集合2 : 差集,获得在集合1中存在但是在集合2中不存在的元素集合

s - {9, 10} # ---> {1, 2, 3, 5, 6, 8}
集合和列表之间的转换(也可以和元组进行转换,方式类似)

list(集合):将集合转换成列表

set(列表):将列表转换成集合

㈦ python中如何删除列表中的所有元素

a=[1,2,3]
a.clear()

㈧ python--set(集合)

一、创建集合

创建非空集合:集合中set括号中需要的参数的数据类型有:序列(包括字符串、列表、元组),字典可以转为集合,注意数值类型不能作为集合的参数,如int类型。

二、添加元素

add() 方法是将要添加的元素作为一个整体添加到集合中

update() 方法是把要传入的元素拆分成单个字符,存于集合中,并去掉重复的

三、删除元素

集合的删除操作使用的方法跟列表是一样的,使用的也是 remove 方法,只能单个删除

四、遍历集合

五、集合与字符串、列表、元组互转,集合转字典

六、查找元素并删除

函数原型: a.discard(b)

参数说明:a为一个set类型的变量;b表示要查找并删除的元素

函数作用:在集合setVar中查找element元素,如果存在则删除;如果没找到,则什么也不做。该函数没有返回值

七、pop用法

函数原型: set1.pop()     删除并返回集合set1中的第一个元素,如果为空引发KeyError错误+

八、clear、和len的用法

clear     方法用于清空集合中的所有元素

    方法用于集合拷贝

len     跟求序列的长度的函数len()是一样的,返回的是集合中有多少个元素

九、求集合的交集、并集、差集和difference的用法

求集合的 交集 使用的符号是 “&”

求集合的 并集 用的是符号 “|”

求集合的 差集 使用的符号是减号 “-”

difference    等价于集合的差集 ,查看两个集合的不同之处。这种不同指的是集合s1相对于集合s2,不同的地方,也就是所有在集合s1中,而不再集合s2中的的元素组成的新集合

十、运算符判断集合间关系和issuperset、issubset的用法

集合可以使用大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、等于(==)、不等于(!=)来判断某个集合是否完全包含于另一个集合,也可以使用子父集判断函数。

issuperset     集合st1是否是集合st2的父集

issubset     集合st1是否是集合st2的子集

十一、不可变集合frozenset的用法

frozenset     该集合中的内容是不可改变的,其他功能及操作跟可变集合set一样

㈨ Python基础实战之集合元素的添加和删除

集合元素的添加操作有两种方法:

1、调用add()方法,一次添加一个元素

2、调用update()方法,至少添加一个元素

------------------------------

s={10,20,40,80}

s.add(30) #一次添加一个元素

print(s) #{10,30,20,40,80}

s.updae({200,300,400}) #一次至少添加一个元素

print(s) #{200,10,300,20,400,30,80,40}

s.update([800,900]) #可以添加列表

s.update((45,55)) #可以添加元组

print(s) #{200,5510,45,300,800,20,900,400,30,80,40}

------------------------------

集合元素的删除操作

1、调用remove()方法,一次删除一个指定元素,如果指定的元素不存在抛出KeyError

2、调用discard()方法,一次删除一个指定元素,如果指定的元素不存在不抛异常

3、调用pop()方法,一次只删除一个任意元素

4、调用clear()方法,清空集合

------------------------------

s.remove(200) #一次删除一个指定元素,如果指定的元素不存在抛出KeyError

print(s) #{55,10,45,300,800,20,900,400,30,80,40}

s.discard(900) #一次删除一个指定元素,如果指定的元素不存在不抛异常

print(s) #{55,10,45,300,800,20,400,30,80,40}

s.pop() #删除谁不知道,任意一个元素

print(s) #{55,10,45,800,20,400,30,80,40}

s.clear() #清空集合中的所有元素

print(s) #set()

㈩ Python del 语句的用法是什么样

5.2. del 语句
有个方法可以从列表中按给定的索引而不是值来删除一个子项: del 语句。它不同于有返回值的 pop() 方法。语句 del 还可以从列表中删除切片或清空整个列表(我们以前介绍过一个方法是将空列表赋值给列表的切片)。例如:
>>> a = [-1, 1, 66.25, 333, 333, 1234.5]
>>> del a[0]
>>> a
[1, 66.25, 333, 333, 1234.5]
>>> del a[2:4]
>>> a
[1, 66.25, 1234.5]
>>> del a[:]
>>> a
[]
del 也可以删除整个变量:
>>> del a
此后再引用命名 a 会引发错误(直到另一个值赋给它为止)。我们在后面的内容中可以看到 del 的其它用法。

热点内容
怎么进别人的服务器 发布:2025-05-14 22:45:55 浏览:772
用编程写音乐 发布:2025-05-14 22:45:08 浏览:782
如何识别电脑的网络配置 发布:2025-05-14 22:38:46 浏览:847
pipforpython3 发布:2025-05-14 22:38:34 浏览:350
如何把迷你世界的服务器搞崩 发布:2025-05-14 22:37:15 浏览:94
如何让安卓卡死机 发布:2025-05-14 22:36:27 浏览:634
wemall微商城源码 发布:2025-05-14 22:15:20 浏览:804
隆地优选交易密码是什么 发布:2025-05-14 21:53:23 浏览:97
强酸强碱存储柜 发布:2025-05-14 21:45:16 浏览:565
车辆参数配置包括什么 发布:2025-05-14 21:31:03 浏览:164