__name__ 与 __main__解读
在python脚本中我们经常看到如下的代码:
# hello.py
def hello():
print("hello world!")
def test():
hello()
if __name__ == '__main__':
test()
通常,一个python文件有两种使用方法:
(1)直接作为脚本执行;
(2)import到其他的python脚本中被调用(模块重用)执行
以上代码中,如果模块作为脚本运行,则变量__name__的值将为‘__main__’, 此时将执行测试函数test(); 如果该函数作为模块导入另一程序脚本中,则变量__name__的值将为该模块的名称,此时不执行测试函数test().
__name__ 与 __main__解读的更多相关文章
- python __name__ 和__main__的使用领悟
__name__和__main__的使用 #hello.pydef sayHello(): str="hello" print(str); if __name__ == " ...
- 混合用法模式 __name__和__main__
# -*- coding: utf-8 -*- #python 27 #xiaodeng #混合用法模式 __name__和__main__ #可把文件作为模块导入,并以独立式程序的形式运行,每个模块 ...
- __name__ 和 "__main__"
本模块名: person 调用者模块名: start import sys def funcperson(): print('我是人') print(sys.modules[__name__]) # ...
- Python中的__name__和__main__含义详解
1背景 在写Python代码和看Python代码时,我们常常可以看到这样的代码: ? 1 2 3 4 5 def main(): ...... if __name == "__m ...
- python某个module使用了相对引用,同时其__name__又是__main__导致的错误
主要讲解 某个module中使用了相对引用,同时这个module的 __name__ 属性 又是 __main__ 会报错的问题 1.问题复现 文件结构很简单: |--------package | ...
- python中if __name__ == "__main__":用法解析
__name__: __name__作为模块的内置属性,简单点说呢,就是.py文件的调用方式. __main__: 如果__name__等于"__main__"就表示是直接执行. ...
- python if __name__ == '__main__'解析
废话不多说,正题: python中所有的模块都有一个内置属性 __name__,一个模块的 __name__ 的值取决于如何应用模块.如果 import 一个模块,那么模块__name__ 的值通常为 ...
- python if __name__=='__main__'的理解
定义一个模块叫module.py: def main(): print "we are in %s" %__name__ if __name__=='__main__': main ...
- if __name__ == '__main__的理解
模块之间引用不能循环成环,圆圈 模块的收搜 !!!把模块当作脚本执行 什么叫模块:py文件,如果一个py文件被导入了,他就是一个模块, 模块没有具体的调用过程 但是能对外提供功能 什么叫脚 ...
随机推荐
- #1062 - Duplicate entry '1' for key 'PRIMARY'
insert into db1.table_name_xxx select * from db2.table_name_xxx 从一张表导入到另一张表时出错. 默认是两张字段结构相同的情况 原因: 1 ...
- python基础----斐波那契数列
python实现斐波那契数列的三种方法 """ 斐波那契数列 0,1,1,2,3,5,8,13,21,... """ # 方法一:while ...
- Windows OS PathTooLongException 转摘自http://www.cstruter.com/blog/308
When I told one of my developer friends that I am going to write a post about the PathTooLongExcepti ...
- 回车\r的含义
package main import "fmt" func main() { // \r 回车,从当前行的最前面开始输出,覆盖掉以前的内容 // 输出:曹操刘备关羽 fmt.Pr ...
- 本地存储(sessionStrorage,localStorage)
1.本地存储特性 1. 数据存储在用户浏览器中 2. 设置,读取方便,设置页面刷新不丢失数据 3. 容量较大,sessionStorage约5M,localStorage约20M 4. 只能存储字符串 ...
- go语言从例子开始之Example13.函数多返回值
Go 内建多返回值 支持.这个特性在 Go 语言中经常被用到,例如用来同时返回一个函数的结果和错误信息. Example: package main import "fmt" // ...
- Vue-cli使用prerender-spa-plugin插件预渲染和配置cdn
参考:https://www.jianshu.com/p/6a4c0b281e7f 使用vue-cli打包项目一般为spa项目,众所周知单页面应用不利于SEO,有ssr和预渲染两种解决方案,这里我们只 ...
- 解决vue代理和跨域问题
一.安装vue-resource插件 安装命令:npm install vue-resource --save 安装完之后在根目录下的package.json检查一下插件的版本 在rourer-in ...
- word--->pdf资料转载..
https://blog.csdn.net/dsn727455218/article/details/80667927
- 观察者模式Observer
原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11409319.html 1. 定义定义对象间的一种一对多的依赖关系.当一个对象的状态发生改变时,所有依 ...