1、模块的导入
- import xx
- from xx import xx
举例:
包路径如下图:
#导包方式1
import MyLib.base_calc
#导包方式2
from MyLib import base_time
暂时介绍这两种实践过的。
2、模块的调用
定义模块:
base_calc.py
# 加
sum = lambda arg1, arg2: arg1 + arg2
# 减
def sub(arg1, arg2):
return arg1 - arg2
# 乘
def mul(arg1, arg2):
return arg1 * arg2
# 除
def div(arg1, arg2):
if arg2 == 0:
return -1
return arg1 / arg2
base_time.py
import time
# 获取格式化时间
def getFormatTime(pattern):
return time.strftime(pattern, time.localtime())
具体调用:
#导包方式1,调用时不可省略前缀
import MyLib.base_calc
#导包方式2 ,调用时可省略前缀
from MyLib import base_time
print("调用求和计算结果:"+str(MyLib.base_calc.sum(1,2)))
print("调用求差计算结果:"+str(MyLib.base_calc.sub(1,2)))
print("调用求积计算结果:"+str(MyLib.base_calc.mul(1,2)))
print("调用求商计算结果:"+str(MyLib.base_calc.div(10,2)))
print("当前时间:",base_time.getFormatTime("%y-%m-%d %H:%M:%S"))
3、总结
还有很多其他的方式导入,如from XXX import * 导入XXX下所有模块或函数;
__name__属性:
一个模块被另一个程序第一次引入时,其主程序将运行。如果我们想在模块被引入时,模块中的某一程序块不执行,我们可以用__name__属性来使该程序块仅在该模块自身运行时执行。
目录只有包含一个叫做 init.py 的文件才会被认作是一个包,主要是为了避免一些滥俗的名字(比如叫做 string)不小心的影响搜索路径中的有效模块。