包的__init__操作
# __init__.py文件: 当导入包的时候,默认调用__init__.py文件
# 作用:
# 1. 当导入包的时候,把一些初始化的函数,变量,类定义在__init__.py文件中
# 2. 此文件中函数,变量等的访问,只需要通过包名.函数.....
# 3. 结合__all__=[通过*可以访问的模块]
from 模块 import * # 表示可以使用模块里面的所有内容,如果没有定义__all__=[]所有的都可以访问
# 如果添加了__all__,只有__all__=[]列表中可以访问的
from 包 import * # 表示该包中内容(模块)是不能访问,就需要在__init__.py文件中定义__all__=[可以通过*访问的模块]
__all__ = ["User"] # 只是针对 from 包.模块 import *
![]()
__init__模块使用
# python包里,会有一个 _ _init_ _.py文件,里面放的是导入函数的方法
![]()
# recv_msg.py 文件里我们写一个变量
![]()
# send_msg.py文件中我们也写一个变量
![]()
# 在文件 A 里导入包的方法
1. from chat import recv_msg # 从chat包里导入recv_msg模块
print(recv_msg.y) # 需要输入 模块名 来调用变量
2. from chat.send_msg import x # 从chat包里send_msg模块导入变量 x
print(x) # 直接导进 x ,不需要输入模块名就可以`直接使用
3. import chat # 直接导入包,会先读取init文件
print(chat.recv_msg.y) # 需要根据包名,调模块,里的变量
![]()