列表 字典的删除问题

yhx003 2019-08-31 原文

列表 字典的删除问题

遇见的删除不彻底的问题

lst = [1,2]
for i in lst:
lst.append(3)#每次增加 lst 的长度越长 所以一直执行
print(lst) # 死循环

删除列表的问题

lst = [1,2,3,4]
for i in lst:
lst.pop()
print(lst)
结果为:[1,2] 当i 为1的时候 删除最后一个元素4; i为2的时候删除3 结束

lst = [1,2,3,4]
for i in lst:
lst.pop(0)
print(lst)
结果为:[3,4]
当i 值为第一个元素 也就是1 删除第一个元素1,此时列表为[2,3,4] 此时i 为第二个元素 也就是3 删除第一个元素 也就时2 这是列表为[3,4] 此时列表为两个元素 不能取第三个元素 结束

lst = [1,2,3,4]
for i in lst:
lst.remove(i)
print(lst)
结果为:[2,4]
当i 值为第一个元素 也就是1 删除第i个元素1,此时列表为[2,3,4] 此时i 为第二个元素 也就是3 删除第i个元素 也就时2 这是列表为[2,4] 此时列表为两个元素 不能取第三个元素 结束

成功删除的方式

lst=[1,2,3,4,6]
for i in range(len(lst))
lst.pop()
print(list)
结果为:[] 获取列表长度 来进行删除

lst=[1,2,3,4,6]
for i in range(len(lst)-1,-1,-1)
del lst[i]
print(lst)
结果为:[] i为索引值 倒序删除

lst = [1,2,3,4,6]
for i in range(len(lst)):
del lst[-1]
print(lst)
结果为:[] 获取列表长度 每次删除最后一个 执行i次

lst = [1,2,3,4,5,6]
lst1 = lst.copy()
for i in lst1:
lst.remove(i)
print(lst)
结果为:[] 浅拷贝 lst1 用lst1进行迭代 但 删除lst元素 两个互不影响

删除字典的坑

dic=dict.fromkeys(“12345”,1)# 字典的迭代的时候改变了原来的大小(不能加不能删)
for i in dic
dic[i]=”123″
print(dic)
结果为:{‘1’: ‘123’, ‘2’: ‘123’, ‘3’: ‘123’, ‘4’: ‘123’, ‘5’: ‘123’} 没有改变字典的大小

dic = dict.fromkeys(“12345”,1)
dic1 = dic.copy()
for i in dic1:
dic.pop(i)
print(dic)

浅拷贝 dic 生成dic1 迭代dic1 但删除dic 结果为:{}

集合和字典都是迭代的时候不能改变原来的大小

发表于
2019-08-31 11:46 河道会 阅读() 评论() 编辑 收藏

 

版权声明:本文为yhx003原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/yhx003/p/11438469.html

列表 字典的删除问题的更多相关文章

  1. 常用URL 列表

    常用URL 列表 原文链接:https://github.com/cww0128/url. Motto:Whe […]...

  2. Python 之 基础知识(三)

      一、函数 def 函数名(): 函数封装的代码 ... def是英文define缩写 别的Python文件 […]...

  3. nodejs 各种版本下载列表

    因为nodejs官网直接展示的是最新的版本,win7系统他们已经不适配了,需要找低版本的nodejs来安装https://nodejs.org/dist/下载msi文件,可以点击直接安装不要从官网下载最新的哦,各种问题层出不穷相信坚持...

  4. python — 列表

    python — 列表 列表(list)是python中常用的数据类型,下面我来介绍几个扩充列表的 […]...

  5. Python3基本数据类型之列表

    1、初识列表 列表(List)是Python3中的”容器型”数据类型。 列表通过中括号 […]...

  6. HTML – 表格 / 列表 / 区块 / 表单

    HTML表格 表格由<table>标签来定义,每个表格均有若干行(由<tr>标签定义) […]...

  7. 列表的两种形式

    列表的两种形式 1.顺序表结构 32位的操作系统每个存储空间占四个字节。 然后列表中同类型的数据的元素的地址是 […]...

  8. 【转】iOS 下拉列表控件

    原文网址:iOS 下拉列表控件 - 简书 (jianshu.com)自己封装了一个简单的下拉列表控件,会根据控件所在屏幕位置自动计算列表是该向上还是向下弹出,调用简单。github地址: https://github.com/wohedu...

随机推荐

  1. Cron表达式

    cron表达式详解   Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个 […]...

  2. 使用 C# 编写自己的区块链挖矿算法

    文章原文来自:Code your own blockchain mining algorithm in Go! […]...

  3. 发现一种写法,类似callback&&callback()

    与callback&&callback()异曲同工 return data && […]...

  4. Java核心技术第八章——泛型程序设计(1)

    1.泛型程序设计 泛型程序设计意味着编写的代码可以被很多不同类型的对象所重用。例如:不希望为了聚集String […]...

  5. SpringBoot 实现整合log4j2日志

    关于日志级别 共有8个级别,按照从低到高为:All < Trace < Debug < In […]...

  6. 从零开始搭建运维体系 – ansible – 轩脉刃

    从零开始搭建运维体系 – ansible 2018-12-17 14:27  轩脉刃  阅读(20 […]...

  7. 超好用的Bootstrap框架

    Bootstrap,来自 Twitter,是目前最受欢迎的前端框架。Bootstrap 是基于 HTML、CS […]...

  8. 17-Python执行JS代码–PyExecJS、PyV8、Js2Py

    一、Python执行JS代码–PyExecJS、PyV8、Js2Py 1.1、PyExecJS   […]...

展开目录

目录导航