模块中为什么要加__name__ == "__main__"
写一个hello模块
#!/usr/sbin/env python #-*- coding:utf- -*- print "我是hello模块,我被执行了"
在另一个python程序中导入这个模块
#!/usr/sbin/env python #-*- coding:utf-8 -*- import hello
执行这个程序:
我们的本意只是导入这个模块,而不想执行这个模块
C:\Python27\python.exe E:/deploy/m/h.py 我是hello模块,我被执行了 Process finished with exit code 0
为了在导入模块的时候不自动执行模块中的方法我们可以这么做:
#!/usr/sbin/env python
#-*- coding:utf-8 -*-
if __name__ == "__main__":
print "我是hello模块,我被执行了"
加iif __name__ == "__main__":语句之后并不影响改程序在终端中的执行
[root@vm_134 tmp]# python hello.py 我是hello模块,我被执行了 [root@vm_134 tmp]#
模块中为什么要加__name__ == "__main__"的更多相关文章
- (转)Python中如何理解if __name__ == '__main__'
摘要 通俗的理解 __name__ == '__main__' :假如你叫李凯.py,在朋友眼中,你是李凯( __name__ == '李凯' ):在你自己眼中,你是你自己( __name__ == ...
- python中如何理解if __name__ == '__main__'
__name__ 是当前模块名,当模块被直接运行时模块名为 __main__ .这句话的意思就是,当模块被直接运行时,以下代码块将被运行,当模块是被导入时,代码块不被运行.我们通过一个简单的例子来理解 ...
- flask中的if __name__ == "__main__"
在编写python文件时,一般会在入口文件中加入if __name__ == "__main__", 这样当这个脚本文件执行时就会执行这个语句下面的内容,而如果这个脚本文件被当作模 ...
- Python中的if __name__='__main__'语句的作用
笔者在自学Python的过程中,对于if __name__='__main__'的用法感到很困惑,在think Python一书中原作者的源代码是这么解释if __name__='__main__'语 ...
- python中的if __name__ == '__main__' what hell is it?
python中的if __name__ == '__main__' what hell is it? python认为一切模块都可能被执行或者被import 如果一个模块是被import导入的,那么该 ...
- python中使用if __name__ == '__main__':
引子 在python中,假设在一个test1.py的模块中定义了一个foo函数,然后调用函数foo进行测试的时候会产生一个内存空间.当你把这个模块导入到test2.py模块中,接下来如果在test2. ...
- 【转】Python 中的 if __name__ == '__main__' 该如何理解
转自:http://blog.konghy.cn/2017/04/24/python-entry-program/ 程序入口 对于很多编程语言来说,程序都必须要有一个入口,比如 C,C++,以及完全面 ...
- python基础——认识(if __name__ == ‘__main__’:)
我们在写代码时,经常会用到这一句:if __name__ == '__main__',那么加这一句有什么用呢?实际上,它起到到了一个代码保护功能,它能够让别人在导入你写的模块情况下,无法看到和运行if ...
- 小白的Python之路 if __name__ == '__main__' 解析
if __name__ == '__main__' 参考文献: http://www.cnblogs.com/xuxm2007/archive/2010/08/04/1792463.html http ...
随机推荐
- Swift 学习有用的学习链接(此贴随学习的深入会一直更新)
Swift 字符串相关学习推荐下面这个链接内容 一: http://www.jianshu.com/p/52e7580166ff (里面详细的介绍了2.0 和 2.0之前 的版本的一些不同的处) 二 ...
- border-radius属性值参数详解
border-radius是CSS3设置圆角的一个属性,其属性值得单位可以使用:em.px.百分比等等.但是,border-radius属性值得参数形式有好多种,那么具体都代表什么意思呢?下面以实际例 ...
- 5个Android开发中比较常见的内存泄漏问题及解决办法
android中一个对象已经不需要了,但是其他对象还持有他的引用,导致他不能回收,导致这个对象暂存在内存中,这样内存泄漏就出现了. 内存泄漏出现多了,会是应用占用过多的没存,当占用的内存超过了系统 ...
- 一键打包并发布到Nuget平台
目标是只要执行一个命令就自动发布新版本到nuget平台 第一步在nuget官网注册一个账号 会有一个APIKEY 如下图 在工程里面添加一个Gruntfile.js 然后copy以下代码 在vs里 ...
- 浅谈css中一个元素如何在其父元素居中显示
css如何垂直居中一个元素的问题已经是一个老生常谈的问题了.不管对于一个新手或者老手,在面试过程中是经常被问到的.前两天在看一个flex的视频教程,当中提到了有关元素的居中问题,所以今天小编就来扒一扒 ...
- [Kafka] - Kafka Java Consumer实现(一)
Kafka提供了两种Consumer API,分别是:High Level Consumer API 和 Lower Level Consumer API(Simple Consumer API) H ...
- 微信公众平台开发-access_token获取及应用(含源码)
微信公众平台开发-access_token获取及应用(含源码)作者: 孟祥磊-<微信公众平台开发实例教程> 很多系统中都有access_token参数,对于微信公众平台的access_to ...
- Hibernate一对一外键映射
Hibernate 一对一外键映射 ------------------------------ ----- ...
- Jackson学习(一)
Jackson的一些配置.使用方式以及效率方面的简单介绍. 1.jackson的maven依赖 <!-- jackson依赖 --> <dependency> <grou ...
- [HDU1210] Eddy's 洗牌问题
Problem Description Eddy是个ACMer,他不仅喜欢做ACM题,而且对于纸牌也有一定的研究,他在无聊时研究发现,如果他有2N张牌,编号为1,2,3..n,n+1,..2n.这也是 ...