1. 首页>百科大全 > 百科

python怎么把列表去掉

作者:张夕明
2020-05-11
百科

1. 如何把列表外的列表移除python

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

再看下面,利用index来遍历删除列表ll = [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过滤返回新的listl = [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]//同样产生一个新序列,复值给lprint 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 = ll.remove(1)print l//肯定是[2,3,4]print ll//这里会是什么?如果用id函数查看的话就发现print id(l),id(ll)打印出相同的号码,说明他们其实是一个值,也就是说上面的print ll将和l打印的一样,所以python有这种性质,用的时候注意一下就行了。

2. 如何把列表外的列表移除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有这种性质,用的时候注意一下就行了

3. python 列表怎样去掉一个元素

li = [1,2,3,4,5,6]# 1.使用del删除对应下标的元素del li[2]# li = [1,2,4,5,6]# 2.使用.pop()删除最后一个元素li.pop()# li = [1,2,4,5]# 3.删除指定值的元素li.remove(4)# li = [1,2,5]# 4.使用切片来删除li = li[:-1]# li = [1,2]# !!!切忌使用这个方法,如果li被作为参数传入函数,# 那么在函数内使用这种删除方法,将不会改变原listli = [1,2,3,4,5,6]def delete(li, index):li = li[:index] + li[index+1:]delete(li, 3)print li# 会输出[1,2,3,4,5,6]。

4. python关于删除列表

a = [ { 'Num': '001', 'Name': '张三', 'Workingtime': 'Monday', 'Money': '100' }, { 'Num': '002', 'Name': '李四', 'Workingtime': 'Tuesday', 'Money': '200' }]a.pop(0) 思路是找到要删除的元素在列表中的索引,然后调用 pop,索引作为参数。

pop 返回被删除的元素。队列剩下的就是删除该索引元素之后的剩余的。

5. python怎样去除列表中的空列表

>> ls = [12,32,[],'',[],'',"",[],454]

>>> while [] in ls:

ls.remove([])

>>> ls

[12, 32, '', '', '', 454]

>>> while '' in ls:

ls.remove('')

>>> ls

[12, 32, 454]

>>>

这样就可以了,直接remove

python怎么把列表去掉

推荐阅读
  • 努比亚z9max手机音乐效验

    该机拥有HIFI级音乐芯片,音乐效果不凡。具体体现在:1.音量调节,正常听音乐中高低音都是一个音量,而杜比音效能动态扩大某个音量。比如放打鼓声,杜比会及时提高低音加强鼓声。2.加强音域,杜比音效有开阔、集中、…

    百科 2024-05-20
  • 是atChristmas还是inChristmas

    此处该用“on”。在圣诞节正确表达应为 “on Christmas ”。有具体日期的,比如知道几月几日的都用“on” ;不知道日期,但知道年份和月份的用“in” ,知道具体时间,比如几点几分用“at”。…

    百科 2024-05-20
  • 个体工商户应交纳什么税

    纳税标准根据国家税务总局《个体工商户定期定额征收管理办法》文件精神 ,定期定额征收方式适用的税种及税率如下:1、根据《中华人民共和国增值税暂行条例》规定,自2009年1月1日起,小规模纳税人增值税征收率为3%…

    百科 2024-05-20
  • 材料成本差异率为负数是什么意思

    材料成本差异额,是指材料的实际成本和计划成本之间的差额。差异率负数表示节约差异,即实际成本比计划成本小。正数表示超支差异,即实际成本比计划成本大。…

    百科 2024-05-20
  • 塞翁失马焉知非福是什么意思

    比喻一时虽然受到损失,反而因此能得到好处。也指坏事在一定条件下可变为好事,反之亦然。形容人的心态,一定要乐观向上,任何事情都有二面性,不好的一面,有可能向好的一面转化。塞翁失马,焉知非福出自《 淮南子…

    百科 2024-05-20