以下内容为个人的学习笔记整理,如有错误,请指出,谢谢~
一、模块概述
1、每一个.py文件都可以视为一个模块,通过在当前.py文件中导入其他.py文件,可以使用被导入文件中定义的内容。
2、模块分为三类:
①内置模块:是python官方提供,可以直接导入。
②第三方模块:非官方制作发布,提供大众使用的,在使用之前需要自行安装。
③自定义模块:开发人员自行编写到底,存放功能性代码的.py文件。
3、导入方式import:
①基本语法格式:import 模块1,模块2.....
②在导入的时候可以通过.模块中的函数或者类。
③如果是导入名称较长的模块,可以加个as 取别名。如:import 模块名 as 别名
4、导入方式from...import:
①from 模块名 import *:利用通配符“*”可使用from...import...导入模块中的全部内容。
②from 模块名 import 函数名 as 别名:from…import…也支持为模块或模块中的函数起别名。
③虽然通过“from 模块名 import …”方式可简化模块中内容的引用,但可能会出现函数重名的问题。因此,相对而言使用import语句导入模块更为安全。
5、常见的模块:
①sys:
②os:
③time
④random
二、自定义模块
1、python中每个文件都可以作为一个模块存在,其文件名就是模块名。
2、如果需要导入其它目录下的模块,那么可以将被导入模块的目录添加到python模块的搜索路径中:sys.path.append("D:\Python项目\模块使用")
三、模块导入属性
1、__all__属性:
①实际上是一个元组,该元组中包含的元素决定了使用from..import *语句导入模块内容时通配符*所有内容。
②如果只包含模块部分内容,那么from…import *语句只会将__all__中包含的部分内容导入程序。
2、__name__属性:
__name__属性通常和if一起使用,若当前模块是启动模块,则__name__的值是__main__,若该模块被其他程序导入,则__name__的值为文件名。
四、python中的包和库
1、python中的包是一个包含__init__.py文件的目录,该目录下还包含一些模块以及子包:
包中的__init__.py文件可以为空,但必须存在,否则包将退化为一个普通目录。
2、__init__.py作用:
①标识当前目录是一个python的包。
②作用是模糊导入。
3、如果__init__.py文件没有声明__all__属性。那么导入模块内容为空。