深浅拷贝

    • 对之前的只是进行补充
      • str中的join方法,把列表转成字符串
        s = (['高华信','刘清扬','催国章'])
        s = ​'_'join(['高华信','刘清扬','催国章'])
        print(s)​
        #输出​ 高华新_刘清扬_崔园樟 

        ​​s = (['高华信','刘清扬','催国章'])
        s = ​'**'join(['高华信','刘清扬','催国章'])​
        print(s)​
        ​#输出高华新**刘清扬**崔园樟
      • join 也可以作为迭代的对象

        s = '_'join​('刘能')
        print(s)​
        #输出​ 刘_能
      • str中将字符串转换成列表 split
        s= 'asdasdasdasd'
        s1 = s.split()
        print(s1)
        #输出 ['asdasdasdasd']​
      • 列表和字典在循环的时候不能直接删除,需要吧要删除的内容记录在新的列表中,然后循环新列表,删除字典或列表
        lst = ['"张国荣", '张铁林', '张国立', "张曼玉", "汪峰"']
        new_lst = []
        for el in lst:
        if el.startswith​('张'):
        new_lst.append('张')
        for el in new_lst:
        lst.remove(el)
        print(lst) #打印的是除了姓张之外的列表
        print(new_lst)​ #打印的是姓张的列表​​​​​​
        • 列表的删除 clear 清空列表
        • 字典的删除
          dic = {"提莫":"冯提莫", "发姐":"陈一发儿", "55开":"卢本伟"}
          li = []
          for i in dic
          if i.startswith('提莫')
          li.append(i)
          for i in li:
          dic.pop(i)
          print(dic)​​​​​​​​
        • 列表的删除
      • formkeys()
        • 返回新的字典,对原字典没有影响
        • 后面的value,是多个key共享的一个value
    • set 集合
      • 特点:无序, 不重复, 元素必须可哈希(不可变)
      • 作用:去重复
      • 本身是可变的数据类型. 有增删改查操作.
    • 深浅拷贝
      • 1. 赋值. 没有创建新对象. 公用同一个对象
      • 2. 浅拷贝. 拷贝第一层内容. [:]或copy()
        lst1 = ["金毛狮王", "紫衫龙王", "青翼蝠王", "白眉鹰王",["张无忌","赵敏","周芷若"]]
        lst2 = lsta[:]
        print(lst2)​​
      • 3. 深拷贝. 拷贝所有内容. 包括内部的所有.
        lst1 = ["金毛狮王", "紫衫龙王", "青翼蝠王", "白眉鹰王",["张无忌","赵敏","周芷若"]]
        ​lst2 = copy.deepcopy
      • 引入 copy 模块
        • inport copy

posted on 2018-08-03 21:23  你说我记  阅读(112)  评论(0编辑  收藏  举报

导航