1.再学–包,模块
包(lib)、模块(module)
在 Python 中,存在包和模块两个常见概念。
模块:编写 Python 代码的 py 文件
包:用来分门别类存放模块代码的文件夹,【一般存在一个__init__.py 文件】
模块的几种导入方式:
init.py 文件:
__all__变量的使用:
init.py 文件中导入其他模块文件,推荐使用
from . import xxx**.**代表当前目录下导入模块
import 模块名称|包名称
.import xx.xxx.xx as xxxx 重命名
from 包名称.xxx.xxx import xxx
注意:
1、 当一个普通文件夹充当包的时候,导入模块时,一定要指定模块名称,因为普通文件
夹不是包(包是可以直接导入的)。
2、 当导入的包路径太长的时候,可以使用 as 关键字取别名来解决
3、 包与普通文件夹的区别(普通文件夹相比包,缺少一个声明)
==,is 的使用
• == 是比较两个对象是否相等。(比较的数值)
• is 是比较两个引用是否指向了同一个对象(地址引用比较)。
**
深拷贝、浅拷贝
赋值
将一个变量赋值给另一个变量,这个过程叫做赋值。赋值会导致多个变量同时指向一块
内存,所以此时不管是==或者 is 都返回 True
浅拷贝:
浅拷贝是对于一个对象的顶层拷贝
通俗的理解是:拷贝了引用,并没有拷贝内容
深拷贝:
(递归拷贝)
深拷贝是对于一个对象所有层次的拷贝(递归)
注意常量类型的深浅拷贝问题(如字符串、小整形数值型、元组)
**