zoukankan      html  css  js  c++  java
  • 坑坑坑坑坑坑----列表

    死循环

    # lst = [1, 2]
    # for i in lst:
    #     lst.append(3)
    # print(lst)
    

    删除列表元素会遇到的坑

    # pop默认删除
    lst = [1, 2, 3, 4]
    for i in lst:
        lst.pop()
    print(lst)
    # 解释:
    # pop默认从后往前删除,元素被删除后,会自动补位
    # 走到一的时候删2,走到二的时候删3,所以会留下俩个
    # remove 也是同样的原理
    
    # 指定索引删除,从前往后删除
    lst = [1, 2, 3, 4]
    for i in lst:
        lst.pop(0)
    print(lst)
    
    # 按照索引位置删除,每删除一个元素,自动补位
    lst = [1, 2, 3, 4]
    for i in lst:
        lst.remove(i)
    print(lst)
    
    # 使用pop删除的时候删不干净,可以用如下方法
    lst = [1, 2, 3, 4, 5]
    for i in range(len(lst)):    # 根据列表长度进行循环删除
        lst.pop()
    print(lst)
    
    # 使用del删除,每次都删除最后一个元素
    # 方法一
    lst = [1, 2, 3, 4, 5]
    for i in range(len(lst)-1,-1,-1):
        del lst[i]
    print(lst)
    
    # 方法二
    lst = [1, 2, 3, 4, 5]
    for i in range(len(lst)):
        del lst[-1]
    print(lst)
    
    # 方法三,使用remove
    lst = [1, 2, 3, 4, 5, 6]
    lst1 = lst.copy()
    for i in lst1:
        lst.remove(i)
    print(lst)
    

    删除或者修改字典会遇到的坑

    # 删除字典元素
    dic = dict.fromkeys("12345",1)
    dic1 = dic.copy()
    for i in dic1:
        dic.pop(i)
    print(dic)
    
    # 修改字典键值对的值
    dic = dict.fromkeys("123456", 1)
    for i in dic:
        dic[i] = '123'     ## 字典在迭代的时候改变了原来的大小(不能加不能删)]
    print(dic)
    
  • 相关阅读:
    react阻止默认事件
    react组件直接在document上添加事件
    react组件更新swiper
    react组件里阻事件冒泡
    react生命周期获取异步数据
    加油
    redis教程
    redis哨兵机制
    redis复制
    致自己
  • 原文地址:https://www.cnblogs.com/yangduoduo/p/11181647.html
Copyright © 2011-2022 走看看