美文网首页
python高级编程--1

python高级编程--1

作者: 简简简简简简简书 | 来源:发表于2017-09-05 20:13 被阅读0次

    1.包和模块

    1.1包(lib)

    python里面的包是指一个文件夹,一般包含init.py文件,y一个包里面可以同时包含多个py文件。

    1.2模块(module)

    python里面模块是指一个写有python代码,用于完成某项功能的文件,一个模块可以看成独立的文件,一个文件也可以看成一个模块。

    1.3模块的引入

    比如创建一个包mypackage,包文件夹下创建两个自定义模块test1、test2以及init.py和用于测试的demo01文件。

    image.png

    1.3.1第一种引入

    import + 包路径文件名称
    我们可以在demo01文件里这样引用,如import mypackage.test1,import mypackage.test2

    1.3.2第二种引入

    from +包路径+import+模块名称
    from mypackage import test1,from mypackage import test2

    1.3.3第三种引入

    from +包路径+import * 引入该包下面的所有模块,首先要创建一个--init--文件,在文件里写入__all__=["test1","test2"],然后通过from mypackage import *来引入当前包路径下的所有模块。

    2. ==和is的使用

    “==”比较的是两个对象的数值是否相等,“is”比较的是两个对象是否指向同一个内存(id是否相等)
    声明了一个变量a=10,b=10,判断两个对象的值是否相等以及是否指向同一个内存


    image.png
    image.png

    3.拷贝(copy)

    Python中,对象的赋值都是进行对象引用(内存地址)传递。
    python内置了copy模块,通过import copy即可。
    所谓拷贝,就是创建一个新对象,拷贝出来的对象与原对象没有任何关联(id地址发生了变化)。

    image.png

    3.1深拷贝

    深拷贝(copy.deepcopy())是创建一个新对象,递归copy原对象的所有子对象,然后与原对象断开联系,当原对象的子对象发生变化时,深拷贝的对象不会发生变化。

    image.png

    3.2浅拷贝

    浅拷贝是创建一个新对象,copy原对象的所有子对象,然后与原对象断开联系,当原对象的子对象发生变化时,浅拷贝的对象随之发生变化(共享子对象)。

    image.png

    相关文章

      网友评论

          本文标题:python高级编程--1

          本文链接:https://www.haomeiwen.com/subject/icfpjxtx.html