新建一个python package 名为westos_message
发现自带一个__init__.py 文件。
包:
目录下有一个特殊的文件__init__.py
包是一个包含多个模块的特殊目录
在这个包下新建两个python模块:
名为receive_messge.py和send_message.py
def receive():
print('这是来自10086的短信')
def send(a):
print('正在发送%s' %(a))
在__init__.py 文件下写:
from westos_message import send_message
在最大目录下(我是python目录)新建一个名为bao.py的文件,
import westos_message
westos_message.send_message.send('python')
westos_message.receive_messge.receive()
这时我们发现因为我们没有在__init__.py导入receive_message模块,所以在这里调用不了。
此时我们在__init__.py:
from westos_message import send_message
from westos_message import receive_messge
现在我们运行bao.py的内容就可以成功。
另一种方法导包:
改写__init__.py:
__all__=['send_message','receive_messge']
# __all__决定 from xx import * 导入的内容
# 等同于
#from westos_message import send_message
#from westos_message import receive_messge
改写bao .py
from westos_message import *
send_message.send('hello')
receive_messge.receive()