职场小白,欢迎大家补充~
1. 文件的结构
文件结构:包yuesfpkg
两个并行模块:模块input_manager,模块output_manager
两个包含模块:模块output_manager,模块compute_submanager
测试文件:test.py
文件__init__.py
的作用:
1、识别它是一个包还是一个文件夹。
2、可以用来做批量导入,让别的包调用。
2. 具体代码
2.1 模块input_manager下的三个函数代码
"""__init__.py"""
# -*- coding:utf-8 -*-
# 通知别人如何调用该模块内的代码
from yuesfpkg.input_manager.user_input import user_int
"""user_input_helper.py"""
# -*- coding:utf-8 -*-
def user_int():
a = int(input('输入一个整数:'))
b = int(input('输入一个整数:'))
return a,b
def user_float():
c = float(input('输入一个实数:'))
d = float(input('输入一个实数:'))
return c,d
"""user_input.py"""
# -*- coding:utf-8 -*-
"""===========================同模块下函数的调用=============================="""
import yuesfpkg.input_manager.user_input_helper as user_input_helper
"""===========================同模块下函数的调用=============================="""
def user_int():
a,b = user_input_helper.user_int()
c,d = user_input_helper.user_float()
return a,b,c,d
2.2 子模块compute_submanager下的两个函数代码
"""__init__.py"""
# -*- coding:utf-8 -*-
# 通知别人如何调用该模块内的代码
from yuesfpkg.output_manager.compute_submanager import mysum
"""mysum.py"""
# -*- coding:utf-8 -*-
def mysumfun(a,b,c,d):
return round(a+b+c+d,2)
2.3 模块output_manager下的两个函数代码
同级下不同模块的调用
若output_manager中的函数B需要用到intput_manager中的函数A, 只需要在函数B中导入A函数即可, 不用在output_manager中的文件__init__.py导入, 文件__init__.py 是通知外部函数如何调用output_manager中的函数。
不同级下子模块的调用同上
"""__init__.py"""
# -*- coding:utf-8 -*-
# 通知别人如何调用该模块内的代码
from yuesfpkg.output_manager import user_output
"""user_output.py"""
# -*- coding:utf-8 -*-
# 同级模块下的函数调用
import yuesfpkg.input_manager.user_input as user_input
# 同级下子模块的调用
import yuesfpkg.output_manager.compute_submanager as compute_submanager
def sum2():
a, b,c,d = user_input.user_int()
result = compute_submanager.mysum.mysumfun(a,b,c,d)
return result
2.3 测试文件代码
# 导入包名
import yuesfpkg.output_manager.user_output as user_output
print(user_output.sum2())
![](https://img-blog.csdnimg.cn/e44e26fc40c94a83af80fa930528baa4.png)