模块是python组织代码的基本方式:
python的脚本都是用扩展名为py的文本文件保存的。
一个脚本可以单独运行,也可以导入另一个脚本中运行。
当脚本被导入另一个脚本中运行时,我们将其称为模块。
模块名与脚本文件名相同:
比如你有一个items.py脚本,
则可以在另外一个脚本中用import items语句导入它
这是一段名字叫cal.py的python代码,它将被作为cal模块导入的后面的代码中:
#!/usr/bin/python
#coding:utf-8
from __future__ import division
def jia(x,y):
return x+y
def jian(x,y):
return x-y
def cheng(x,y):
return x*y
def chu(x,y):
return x/y
def operator(x,o,y):
if o == "+":
print jia(x,y)
elif o == "-":
print jian(x,y)
elif o == "*":
print cheng(x,y)
elif o == "/":
print chu(x,y)
else:
pass
if __name__=="__main__":
operator(2,'+',4)
下面真正导入cal模块,有以下三种方式
#import cal
#print cal.jia(1,2)
#import cal as c
#print c.jia(1,2)
from cal import jia
print jia(1,2)
还有一种就是一包形式导入模块,常用在有好多模块需要管理在同一包下面:
先在存放模块代码的包(文件夹名字为test)下创建一个__init__.py, init前后是双下划线, 然后就可以在其他目录使用如下代码:
import test.cal
cal.jia(1,2)
总结:
模块是一个可以导入的python脚本文件;
包是一堆按目录组织的模块和子包,目录下的__init__.py
文件存放了包的信息可以用import, import as, from import等语句导入模块和包