zoukankan      html  css  js  c++  java
  • 洗礼灵魂,修炼python(16)--列表进阶话题—>上节作业讲解+copy模块,浅拷贝,深拷贝

    上节课后作业:

    1.使用列表解析输出结果:[(0,0),(0,2),(2,0),(2,2)]

    方法1:

    方法2:

    方法3:

    2.使用列表生成器打印斐波那契数列

    3.使用列表解析生成列表[1x2,3x4,5x6,7x8,…,99x100]

    4.利用3层for循环的列表生成式,找出对称的3位数,例如:121等从左到右从又到左还是原来的对称数

    5.编写一个函数,它接受一个list,然后把list中的所有字符串变成大写后返回,非字符串元素将被忽略

    如果按照平常写法是这样:

    按照列表解析就简单很多:

    注意,此时并没有对原列表更改

    copy模块:

    1.什么是copy

    前面在列表分片的时候稍微提了一下关于拷贝(复制),在这一章将详细介绍关于拷贝的copy模块

    2.作用

    做数据备份,稍微了解运维的都应该听过完全备份和增量备份吧?其实这里就使用了拷贝,所以在实际运用中,拷贝是很常用的

    3.函数(方法):

    看到这些方法,其实相比于前面的,其实并不多对吧?忽略带有特殊功能的方法,其实也就几个对吧?

    然而这个模块最常用的就是copy和deepcopy方法,其他基本很少用,所以直接略过

    copy:这个方法就是简单意义上的拷贝,和常识里的拷贝差不多,它又另一个名称叫【浅拷贝】(或者浅复制),换句话就是对父类对象引用的拷贝

    例:

    deepcopy:这个方法就厉害了,这个比浅拷贝更牛一点,被叫做深拷贝(或深复制),换句话就是对对象的资源的拷贝

     

    (如果看这个图解让你更费解,那么忽略即可,前面的文字说明我想已经够清楚了)

    总结:

    浅拷贝就是对原对象最外层的复制,如果有内层则是直接的引用

    深拷贝是对原对象整个参数资源的复制,不管有内层与否,已经和原对象毫无关系

    拷贝对于字符串和整形数与字典和列表的处理是不同的

    其实是不是很简单?那么如果你还没懂,自己多练习

  • 相关阅读:
    axios
    MySQL -- 书写规则(常数:字符串、日期、数字、 单引号的使用、半角空格)
    MySQL -- 图解:内连接、外连接、左(外)连接、右(外)连接、全连接
    Linux -- Linux下md5sum用法 (查看文件或字符串的md5值)
    Python3 -- Python获取昨天,今天,明天,本周,上周,本月,上月,本季,本年,去年时间
    Linux -- 执行脚本时&和&&
    Linux -- 定时任务 crontab 命令
    Python3 -- json格式 存储、读取文件
    Hive -- SQL 语法
    Hive -- 目录
  • 原文地址:https://www.cnblogs.com/Eeyhan/p/7636976.html
Copyright © 2011-2022 走看看