模块的调用
python 调用其他的模块的时候 ,其实是会把该模块先执行一遍的,比如,我们写一个test.py 内容如下:
"test.py"
print('haha')
然后看我们的主程序main.py
import test
print('main.py')
那么这个时候,我们运行main.py ,得到的会是
haha
main.py
如何才能只调用test.py 而不执行呢???
引入_name_
这时候_name_ 就派上用场了。
什么是_name_呢?
- 当我们没有import 其他模块,而只是单纯的做如下操作,我们得到的_name_将是 main
"test.py"
print(_name_)
运行test.py ,我们得到_name_将是
_main_
- 当test模块被调用时,我们的得到的_name_将是被调用模块名字去掉后坠,比如:
"main.py"
import test
print('a')
此时执行main.py,我们将得到:
test
a
- 简单来说就是,如果不涉及模块导入的话,__name__的值就是” main“,如果当此模块被导入引用的话,那么这个模块内的__name__值就是文件的名字(不带.py)
- 所以,我们在被调用的模块中,可执行的代码前加上这么一句判断,
if _name _ == ‘_main _’ 被调用的模块的代码就不会被执行了!
尊重原创 请务抄袭