九、模块
是一个python文件,以.py结尾,模块能定义函数、类、变量、也能包含可执行的代码。类似一个工具包。
导入方法:
[from 模块名] import [模块|类|变量|函数|*] [as 别名]
**注意:**此处使用中括号表示可省略
常用组合:
- import 模块名
- from 模块名 import 类、变量、函数、方法等
- from 模块名 import * (*表示全部功能的导入,使用时直接调用函数即可,而其他需要使用“.”调用)
- import 模块名 as 别名 (将模块名改为别名)
- from 模块名 import 功能名 as 别名 (将功能名改为别名)
1.自定义模块(__main__变量与__all__变量)
即:正常创建一个.py文件并写好功能,在其他文件中调用时将其导入即可
注意:当导入多个模块时,且模块内有同名功能,调用该同名功能时,后导入的模块该功能有效
__main__变量:
# my_module.py
def counter(x,y):
print(x+y)
'''
一个内置变量name,在当前文件中运行时,该变量的名称标记为main,则if为True;
当以导入模块的方式调用时,if无法参与执行,故不会执行以下内容。
【即满足可在内部测试函数功能,又满足在外部调用时不冗余】
'''
if __name__ == '__main__':
counter(1,2)
# main.py
import my_module
my_module.counter(2, 3)
__all__变量:
# my_module.py
'''
当使用from 模块名 import * 导入时,只能导入all变量列表中的内容,all只作用在*上,可自己额外导入
'''
__all__ = ['counter2']
def counter1():
print("counter1")
def counter2():
print("counter2")
if __name__ == '__main__':
counter1()
# main.py
from my_module import *
counter2()
常用模块归纳
可参考此作者的博客:常用模块总结
2.python包
是一个文件夹,包含许多模块+一个__init__.py文件(相当于标识该文件夹为python包)
当模块文件越来越多时,可以打包方便管理
导入方法:
-
import 包名.模块名
-
from 包名 import 模块名
……等
__all__与模块中使用方法类似
3.第三方包
安装方法:
- 使用默认pip指令:pip install 包名称
- 使用清华镜像:pip install -i https://pypii.tuna.tsinghua.edu.cn/simple 包名称
【记录学习过程的笔记,欢迎大家一起讨论,会持续更新】