1.__main__的作用

我们可以经常在不同的程序和脚本中看到有这样的代码:

if __name__=='__main__':#如果在windows上启动线程池,必须要使用。
func()

很多情况下,不使用“if __name__=='__main__':”直接去执行下面的代码,脚本也能成功执行。

那么它的作用是什么呢?

在很多程序中“if __name__=='__main__':”下面写的可能是一些测试代码。

在Python中,脚本中有“if __name__=='__main__':”,那么执行脚本就会直接运行脚本中“if __name__=='__main__':”下面执行的函数。

在其他脚本中import module1,module1中的“if __name__=='__main__':”的下面的程序不会主动触发执行。

2.实例:

if __name__=='__main__':
print('my name is ',__name__)

  执行上面的脚本,返回:

在一个新的脚本中导入上面的脚本,返回:

import name
print('我是当前脚本的名称',__name__)
print('name.__name__ is',name.__name__)

  执行上面的脚本返回的结果是:

可以从上面的实例中看到,将name.py在新的脚本中import之后,由于name.py的__name__返回的结果是'name',“if __name__=='__main__'”不成立,所以下面的代码不执行。

if __name=='__main__"的作用的更多相关文章

  1. 浅析python 中__name__ = '__main__' 的作用

    引用http://www.jb51.net/article/51892.htm 很多新手刚开始学习python的时候经常会看到python 中__name__ = \'__main__\' 这样的代码 ...

  2. 【转】浅析python 中__name__ = '__main__' 的作用

    原文链接:http://www.jb51.net/article/51892.htm 举例说明解释的非常清楚,应该是看到的类似博文里面最简单的一篇: 这篇文章主要介绍了python 中__name__ ...

  3. 002_浅析python 中__name__ = '__main__' 的作用

    很多新手刚开始学习python的时候经常会看到python 中__name__ = \'__main__\' 这样的代码,可能很多新手一开始学习的时候都比较疑惑,python 中__name__ = ...

  4. python小知识——__name__ = '__main__' 的作用

    很多新手刚开始学习python的时候经常会看到python 中__name__ = \'__main__\' 这样的代码,可能很多新手一开始学习的时候都比较疑惑,python 中__name__ = ...

  5. python __name__ = '__main__' 的作用

    很多新手刚开始学习python的时候经常会看到python 中__name__ = \'__main__\' 这样的代码,可能很多新手一开始学习的时候都比较疑惑,python 中__name__ = ...

  6. 理解 python 中__name__ = '__main__' 的作用

    很多新手刚开始学习python的时候经常会看到python 中__name__ = \'__main__\' 这样的代码,可能很多新手一开始学习的时候都比较疑惑,python 中__name__ = ...

  7. __name__ == "__main__"的作用是什么?

    问题: __name__ == "__main__" 的作用是什么? # Threading example import time, thread def myfunction( ...

  8. python 中if __name__ = '__main__' 的作用

    python 中if __name__ = '__main__' 的作用 前言 首先我们要知道在python里面万物皆对象,模块也是对象,并且所有的模块都有一个内置属性 __name__. 一个模块的 ...

  9. python模块 __name=='__main__' 用法

    python模块 __name=='__main__' 用法1.ceshi_mod1.pydef test1(): print('111111')def test2(): print('2222')i ...

随机推荐

  1. STM32CubeMX的安装

    1.下载STM32CubeMX 在ST的官方网站上下载STM32CubeMXXX软件的安装包. 下载的安装包如下图所示.双击SetupSTM32CubeMX-5.0.1.exe. 安装STM32Cub ...

  2. background-clip 和 background-origin 有什么区别? -[CSS] - [属性]

    这两个属性在W3S上的示例,给人的感觉好像效果是一样的:

  3. vue-cli3引入svg图标全过程以及遇到的坑

    https://blog.csdn.net/weixin_41229588/article/details/101159755 一.配置 1.安装依赖: npm install svg-sprite- ...

  4. 项目组件:分页(pagination)

    此分页组件可以辅助完成项目中前端页面分页展示 """ 分页组件应用: 1. 在视图函数中 queryset = models.Issues.objects.filter( ...

  5. ln 软连接与硬连接

                                                                                                        ...

  6. 下载安装配置 Spark-2.4.5 以及 sbt1.3.8 打包程序

    文章更新于:2020-03-29 按照惯例,文件附上链接放在文首. 文件名:spark-2.4.5-bin-without-hadoop.tgz 文件大小:159 MB 下载链接:https://mi ...

  7. String 对象-->split() 方法

    1.定义和用法 split() 方法用于把一个字符串分割成字符串数组. 语法: string.split(separator,limit) 参数: separator:可选.字符串或正则表达式,从该参 ...

  8. Restlet Client发送GET、POST等请求

    插件下载 百度云盘 链接:https://pan.baidu.com/s/13R4s1UR5TONl2JnwTgtIYw 密码:rt02 插件安装 解压后,直接拖进浏览器中. 功能演示

  9. 【LeetCode】23.合并K个排序链表

    题目描述 23.合并K个排序链表 合并k个排序链表,返回合并后的排序链表.请分析和描述算法的复杂度. 示例: 输入: [ 1->4->5, 1->3->4, 2->6 ] ...

  10. Python基础:按位异或 ^ ,按位或 | ,按位与 &

    前言文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http: ...