首页 > 技术文章 > Python模块

ping-y 2016-09-01 15:53 原文

模块:是一个包含所有你定义的函数和变量的文件,其后缀名是.py。 

模块调用:import

 例:

test1.py中代码为:

def f(x):
    print('hello:',x)
    return
f('echo')

输出结果:

hello: echo

test2.py引入test1模块:  #注意:这导入模块时,首先查找当前目录下是否有该模块名。如果没有,再去python安装目录下查找,如果python安装目录下没有就会提示不存在该模块。

import test1   #导入模块

test1.f('pingy')

输出结果:

hello: echo   #这时,test1模块中代码也一起打印出来了!
hello: pingy

 


 

 对上面例题扩展:在test1.py修改如下:

def f(x):
    print('hello:',x)
    return

if __name__ == '__main__':    # 判断模块名字是否被直接调用
    print(__name__)     #打印调用模块的名字
    f('echo')

输出结果:

__main__     #在没有调用其他模块时,显示‘__main__’,自己就是主模块!
 hello: echo

然后再执行test2.py中代码:

import test1   #导入模块

test1.f('pingy')

输出结果:

hello: pingy   #这样就不用再打印test1中的内容了!

 


 

为了更简便可以从模块中导入函数(调用格式:from module import def)

上题中test2.py代码可修改为:

from test1 import f     #从test1中导入f函数
f('pingy')

输出结果:

hello: pingy

 

包:python模块可以按目录组织为包

创建包:

(1)创建一个文件夹

(2)在该文件夹下创建一个__init__.py文件

(3)根据需要在该文件夹下存放脚本文件,已编译扩展及子包

包调用:调用方法与调用模块一样(packetname.modulename)


 

推荐阅读