一.包 在模块的定义里,模块就是方法的集合,可以将一些常用的方法封装到一个py文件中,通过调用使用,而且,其中的表现形式也有以包的形式导入. 其实,包就是一系列模块的结合体,表示形式就是一个文件夹,在文件夹中有一个__init__py文件. init文件就是将包中的方法全部集合 的地方,使用者使用包的时候就是通过运行init文件. 在init文件中可以使用两种方法调用包里的方法: import p.m1 from p.m1 import f1 当文件启动时:首次导入包:先产生一个执行文件的名称空…
包.logging模块.hashlib模块.openpyxl模块.深浅拷贝 一.包 1.模块与包 模块的三种来源: 1.内置的 2.第三方的 3.自定义的 模块的四种表现形式: 1.py文件 2.共享库 3.文件夹(一系列模块的结合体),即包 4.C++编译的连接到Python内置的 2.模块的导入过程 先产生一个执行文件的名称空间 1.创建模块文件的名称空间 2.执行模块文件中的代码,将产生的名字放入模块的名称空间中 3.在执行文件中拿到一个指向模块名称空间的名字 3.什么是包 它是一系列模块…
包 包是什么 他是一系列文件的结合体,表现形式就是文件夹 包的本质还是模块 他通常会有__init__.py文件 我们首先回顾一下模块导入的过程 import module首次导入模块(.py文件) 先产生一个执行文件的名称空间 1. 创建模块文件的名称空间 2. 执行模块中的代码,将产生的名字和值传入模块的名称空间 3. 在执行文件中拿到一个指向模块的名称空间的名字 作为比较,包的导入过程是这样的 import package 首次导入包: 先产生一个执行文件的名称空间 1.创建包下面的__i…
一.包 什么是包: 它是一系列模块文件的结合体,表示形式就是一个文件夹.该文件内部通常会有一个__init__.py文件,包的本质还是一个模块,可以被调用,调包就相当于与调用__init__.py文件.为了其他文件调用包里面的模块.函数更方便我们可以在__init__里面就写好所有的模块和函数的调用.因为调包就相当于调用__init__.py文件,在其他文件想用包里面的函数,可以直接 import 包名 ,然后  包名.函数名就可以访问到函数了. 下面这个例题是在 '02包.py'  导dir文…
包 包: # 包是一系列模块文件的结合体,表现形式是文件夹,该文件夹内部通常会包含一个__init__.py文件,本质上还是一个模块 包呢,就是前两篇博客中提到的,模块的四种表现形式中的第三种 # 把一系列模块(.py文件)组合到一起的文件夹(包) 下文呢,也将把包与模块前面的模块知识对比展开. 首先,复习下执行文件导入模块发生的一些事 """ 1.先产生一个执行文件的名称空间 2.创建模块文件的名称空间 3.执行模块文件中的代码 将产生的名字放入模块的名称空间中 4.在执行…
包 1.什么是包? 包是模块的一种形式,包的本质就是一个含有__init__.py文件的文件夹 2.为什么要有包? 提高程序的结构性和可维护性 3.如何使用包? 导入包就是在导包下的__init__.py 方法:import…… from …… import…… 主要的问题: 1.包内所有的文件都是被导入使用的,而不是被直接运行的 2.包内部模块之间的导入可以使用绝对导入(以包的根目录为基准)与相对导入(以当前被导入模块所在的目录为基准),推荐使用相对导入 3.当前文件是执行文件时,无法在该文件…
包:它是一系列模块文件的结合体,表现形式就是一个文件夹,该文件夹内部通常会有一个__init__.py文件,包的本质还是一个模块. 首次导入包:(在导入语句中中 . 号的左边肯定是一个包(文件夹)) 先产生一个执行文件的名称空间 1.创建包下面的__init__.py文件中的名称空间 2.执行包下面的__init__.py文件中的代码,将产生的名字放到包下面的__init___.py文件名称空间中 3.在执行文件中拿到一个指向包下面的__init__.py文件名称空间中的名字 包的设计者: 1.…
深浅拷贝 有时候,尤其是当你在处理可变对象时,你可能想要复制一个对象,然后对其做出一些改变而不希望影响原来的对象.这就是Python的copy所发挥作用的地方. 定义了当对你的类的实例调用copy.copy()时所产生的行为.copy.copy()返回了你的对象的一个浅拷贝——这意味着,当实例本身是一个新实例时,它的所有数据都被引用了——例如,当一个对象本身被复制了,它的数据仍然是被引用的(因此,对于浅拷贝中数据的更改仍然可能导致数据在原始对象的中的改变). 定义了当对你的类的实例调用copy.…
collection模块是对Python的通用内置容器:字典.列表.元组和集合的扩展,它包含一些专业的容器数据类型: Counter(计数器):dict子类,用于计算可哈希性对象的个数. OrderedDict(有序字典):dict 子类,记录着数据成员添加的顺序. defaultdict(默认字典):dict 子类,调用一个工厂函数来为dict的values值缺失提供一个默认值. namedtuple(可命名元组):工厂函数生成有命名字段的tuple子类. deque(双向队列):能在“队列”…
包的使用与日志(logging)模块1. 什么是包    包就是一个包含有__init__.py文件的文件夹    包本质就是一种模块,即包是用包导入使用的,包内部包含的文件也都是用来被导入使用2 为何要用包    包是文件夹,那文件夹就是用来组织文件的3 首次导入包,发送三件事, 1. 以包下的__init_.py文件为基准来产生一个名称空间 2. 执行包下的__init_.py文件的代码,将执行过程中产生的名字都丢到名称空间中 3. 在当前执行文件中拿到一个名字p1,该p1就是指向__ini…