Python __name__的问题
来源:互联网 发布:淘宝优惠卷是真的假的 编辑:程序博客网 时间:2024/06/08 13:33
前几天看教程提到if __name__ == "__main__"的问题,当时就听的一知半解,今天试着自己写了段代码熟悉一下,结果一直不能得到预期的结果:
代码如下:
#!/usr/bin/python#coding:utf-8#filename:myMoudle.py#自己定义一个模块,包含两个函数。 def printHello(): print 'Hello' print len('abc') def sayHi(): print 'say hi to everyone!' printHello()sayHi()
</pre><pre name="code" class="python">
#!/usr/bin/python#coding:utf-8#filename:my__name__.py#导入上一个自定义的模块myMoudle.py import myMoudle as mM print "whatever something"def doSomething(): mM.printHello()
if __name__ == '__main__' doSomething()
运行结果如下:
>>> Hello3say hi to everyone!whatever somethingHello3>>>
其实我的预期是只执行doSomething 函数
>>>
<pre name="code" class="python">whatever somethingHello3>>>
改代码如下:
#!/usr/bin/python#coding:utf-8#filename:myMoudle.py#自己定义一个模块,包含两个函数。def printHello(): print 'Hello' print len('abc') def sayHi(): print 'say hi to everyone!'if __name__ == "__main__": printHello() sayHi()
区别和理解:
当一个.py文件如果只需要调用其中的某些函数或者方法的,在最末端一定要加上
if __name__ == "__main__":
这样别人调用它的时候,这个条件就一直为假,因为__name__ 此是为该.py文件的文件名:myMoudlle,这样它在被调用时就只执行被调用的函数而不会整改都执行。
0 0
- Python __name__的问题
- Python的__name__变量
- python __name__的含义
- python的__name__属性
- python 模块的__name__
- Python的__name__变量
- 关于python中__name__和__main__的问题
- python 模块的__name__ __main__
- python 模块的__name__属性
- python中 __name__ 的解析
- PYTHON里面的__name__属性
- python中的__name__的使用
- python中__name__的解析
- python中__name__的使用
- python 模块的__name__属性
- Python浅析模块的__name__
- python的__name__和__main__
- Python脚本的“__name__”属性
- 杭电2008
- [面试] - java面试题3
- Oralce新建数据库、新建远程登录用户全过程
- 0923
- MFC、WTL 、ATL、STL联系与区别
- Python __name__的问题
- python中thread的setDaemon、join的用法
- HDU5040- Instrusive(BFS+记忆化搜索)
- 鼠标点击地面人物自动走动(也包含按键wasd&space控制) .
- 小黑小波比.Ubuntu下安装Intellij IDEA和java的环境变量
- 修改itunesConnect Status (Developer Rejected 修改为Prepare for Submission)
- UVA - 10020 Minimal coverage(区间覆盖问题)
- Android运行时ART简要介绍
- 新建Oracle数据库的3种方法