标签:
以下是对模块的理解,和总结
<1>模块是什么
模块是这样用的 import os 这就是导入了os模块
这和c语言里的#include<stdio.h>导入方式是一样的
导入了以后就可以用里面的一系列函数了
其实os 模块就是 一个os.py 的文件,当import以后,就可以用里面的mkdir,rmdir方法等
其实os.py文件里面的代码是这样的
def mkdir() xxxx def rmdir() xxxx
<2>模块的调用方法
a.import os
b.import os,math....#可以多个模块写一起,但是这样会容易乱
c.from os import mkdir
mkdir(‘abc‘)#下面直接用就可以了,就不用os.mkdir(‘abc‘)
这种导入方法,比较方便的地方就是可以导入os这个模块里的所有方法
from os import *
当你导入一个模块,Python解析器对模块位置的搜索顺序是:
<4>模块调用详细
新建一个test.py,代码如下
def print_hello(): print(‘-----hello-----‘) def add(a,b): return a+b
在file.py文件里,导入这个模块
import test test.add(2,5)
上面就是最简单的调用
但是,还有一个问题:我自己写的模块,里面有很多函数,我自己要测试一下是否能正常运行,这时候就要在里面加入测试代码
def print_hello(): print(‘-----hello-----‘) def add(a,b): return a+b if __name__ == ‘__main__‘: print_hello() print(add(1,2))
重点来了:就是这句
if __name__ == ‘__main__‘:
为什么加这个判断:因为如果没有判断的话 ,在调用test模块的时候,测试语句也会被file,py所执行打印出来
但是测试语句我们只想让模块他自己调用,其他外人不给用
而且 print(__name__)这个在模块本身输出的结果是__main__
但是在外面调用的时候输出是模块的名字test
所以就可以通过加判断,让这个测试语句只被模块自己调用
标签:
原文地址:http://www.cnblogs.com/timtike/p/5891138.html