• python基础篇 07set集合 深浅拷贝


    本节主要内容:
    1. 基础数据类型补充
    2. set集合
    3. 深浅拷⻉

    " ".join方法

    循环删除列表中的内容:

      错误的 

    原因:在for循环中,循环到第一个,然后删除,删除之后第二个元素向前挪一位,循环指针向后移一位,再删除,结果会导致22,44没删除掉.

    只有这样是可以的:

     

    注意: 由于删除元素会导致元素索引发生变化,所以删除元素是,尽量不要在原来的地方删除,尽量创建一个新的 然后去批量删除

    dict中的fronkey()可以帮我们通过list  创建一个dict

     前⾯列表中的每⼀都会作为key, ⾯列表中的内容作为value. dict
    . 注意:

    由于代码Jay和jj用的是同一个列表,所以要改都改

    主意:dict中的元素在迭代的过程中也是不允许删除的,如果要删除,也要创建新的,同上列表删除方法.

     类型转换:

    tuple-->>list     list(tuple)

     list-->>tuple    tuple(list)

     列表--->>>字符串     "".join()方法

    字符串--->>>列表       split切割

     0, " " , None, [] ,{} ,() ,set()   ----->>>> 可以转为False

     二,  set集合

    set中的元素是不重复.序的.元素必须是可hash(int, str, tuple,bool)

     注意: set集合中的元素必须是可hash, 但是set是不可hash. set是可变的.

     

     set集合增删改查:

    增加:

        .add()    重复的内容不会被更新

        .update()  迭代更新

     删除:

        .pop()    随机弹出一个

        .remove()    删除指定内容,不存在的则报错    

         .clear()      清空set集合.需要注意的是set集合如果是空的. 打印出来是set() 因为要和dict区分的.

     修改:

         集合没有索引,也没办法定位,所以修改只能先删除  在添加

     查:  for 循环迭代

    <<<<<<-----------其他操作------------>>>>>>>

    三  深浅拷贝:

    浅拷贝数据不变    

    深拷贝数据改变

    小弟才疏学浅,感悟不了太多,自己感觉深浅拷贝是个BUG,有懂的朋友可以一起探讨一下.

  • 相关阅读:
    L3002 特殊堆栈
    L3007 天梯地图
    L3004 肿瘤诊断
    Linux常用笔记
    微信红包测试用例
    Ubuntu21 bluetooth connects to freebuds pro freebuds耳机Ubuntu21连接失败
    Freebuds Connnect Problem in the Windows Freebuds耳机windows10连接失败
    Ubuntu21 kernal5.13 Nvidia960M驱动安装系统安装
    Linux进程间通信
    Zeppelin返回503问题
  • 原文地址:https://www.cnblogs.com/dalaoban/p/9151872.html
Copyright © 2020-2023  润新知