广告
返回顶部
首页 > 资讯 > 后端开发 > Python >__name__ == "__main_
  • 590
分享到

__name__ == "__main_

2023-01-30 22:01:00 590人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

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

问题:
__name__ == "__main__" 的作用是什么?

# Threading example
import time, thread

def myfunction(string, sleeptime, lock, *args):
    while True:
        lock.acquire()
        time.sleep(sleeptime)
        lock.release()
        time.sleep(sleeptime)

if __name__ == "__main__":
    lock = thread.allocate_lock()
    thread.start_new_thread(myfunction, ("Thread #: 1", 2, lock))
    thread.start_new_thread(myfunction, ("Thread #: 2", 2, lock))

回答:
python 编译器(Python interpreter)读取了源文件,它会执行其中的所有代码。

在执行代码之前,它会定义几个特殊变量。举例来说,如果 Python 编译器将那个模块(源文件)当作主程序来运行,那么它会将变量 __name__ 的值设为 "__main__"。如果这个源文件是从其他模块导入(import)的,变量 __name__ 会被设为模块名。

在你的案例中,让我们假设这是作为主函数来执行。例如,在命令行上输入 python threading_example.py。当设置完特殊变量,它会执行如下几个步骤:

  1. 执行 import 语句,加载模块;
  2. 评估 def 区域,创造一个函数对象以及一个指向它的变量 myfunction
  3. 读取 if 语句,看到 __name__"__main__" 相等,然后执行其中的代码。

这么做的原因在于,有时候你写了一个模块(.py文件),它既可以直接执行,又可以被引入到其他模块中执行。通过执行 main 检查,有两个好处:

  1. 当你想将该模块作为程序运行时才执行代码;
  2. 当某人只想导入模块并自行调用函数时,不会执行该代码。

该问答来源:

https://stackoverflow.com/questions/419163/what-does-if-name-main-do

--结束END--

本文标题: __name__ == "__main_

本文链接: https://www.lsjlt.com/news/179430.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • __name__ == "__main_
    问题: __name__ == "__main__" 的作用是什么? # Threading example import time, thread def myfunction(string, sleeptime, lock, *ar...
    99+
    2023-01-30
  • python3 __name__
    我们经常会在各种代码中见到一个__name__ == '__main__', 这究竟是什么意思呢 当一个python文件是被当做一个脚本运行的时候, 它的__name__就为__main__, 比如以下代码 >>>...
    99+
    2023-01-31
  • python3 if __name__
    想必很多初次接触python的同学都会见到这样一个语句,if __name__ == "__main__":那么这个语句到底是做什么用的呢?在解释之前,首先要声明的是,不管你是多么小白,你一定要知道的是:1.python文件的后缀为.py;...
    99+
    2023-01-31
  • python中__name__讲解
    一、name变量1.,我们首先直接使用name(不进行定义),若能正常使用,则说明该变量为系统内置变量,如下图所示:从上图中可以知道,name为系统的内置变量。2.当name在当前执行的文件中使用时,它的值为main;但是当name在被调用...
    99+
    2023-01-31
    python
  • flask中的if __name__ =
    在编写python文件时,一般会在入口文件中加入if __name__ == "__main__", 这样当这个脚本文件执行时就会执行这个语句下面的内容,而如果这个脚本文件被当作模块引入(import xxx)到其他文件中时这个下面的语句...
    99+
    2023-01-30
    flask
  • 如何理解Python的 __name__ 变量
    本篇内容介绍了“如何理解Python的 __name__ 变量”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!大家应该已经在很多 Python...
    99+
    2023-06-15
  • Python中if __name__==‘__main__‘用法详情
    前言: 我们先定义一个test01.py的文件。 test01.py中代码如下所示: def step(): print(__name__) print('step1 买菜...
    99+
    2022-11-11
  • Python中if __name__==‘__main__‘怎么使用
    这篇文章主要介绍“Python中if __name__==‘__main__‘怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python中if __name__==‘__...
    99+
    2023-07-02
  • Python中的if __name__ == __main__是什么
    本文小编为大家详细介绍“Python中的if __name__ == __main__是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python中的if __name__ ==&nb...
    99+
    2023-07-04
  • 一文弄懂Python中的 if __name__ == __main__
    1. 引言 在Python相关代码中,我们经常会遇到如下代码段: # stuffif __name__ == "__main__": # do stuff 本文将尽可能使用简单的样例来解释这里发...
    99+
    2023-09-10
    python pycharm 开发语言
  • 关于Python中的if __name__ == __main__详情
    目录1.程序入口2.__name__是什么? 场景1:直接运行脚本 场景2:从其他脚本导入 3.__name__可以显示包路径 5.测试模块里函数 关于在学习Python的过程中,遇...
    99+
    2022-11-12
  • 如何在python中使用__name__ 属性
    本篇文章给大家分享的是有关如何在python中使用__name__ 属性,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1、使用注意__name__ 属性可以做到,测试...
    99+
    2023-06-15
  • Python的__name__变量有什么作用
    本篇内容主要讲解“Python的__name__变量有什么作用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python的__name__变量有什么作用”吧!我知道大家肯定不止一次在Python...
    99+
    2023-06-01
  • Python代码中if __name__ == ‘__main__‘有什么作用
    本篇内容介绍了“Python代码中if __name__ == ‘__main__‘有什么作用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希...
    99+
    2023-06-29
  • 一篇文章彻底弄懂Python中的if __name__ == __main__
    目录1. 引言2. 特殊变量3. 复杂的例子4. 使用场景5. 解决方案6. 总结1. 引言 在Python相关代码中,我们经常会遇到如下代码段: # stuff if __name...
    99+
    2022-12-08
    Python if __name__ == __main__ if__name__=='__main__'的作用 if __name__=='__main__'
  • 怎么在python中使用__name__方法调用模块
    怎么在python中使用__name__方法调用模块?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。python主要应用领域有哪些1、云计算,典型应用OpenStack。2、...
    99+
    2023-06-14
  • 聊聊Python代码中if __name__ == ‘__main__‘的作用是什么
    目录Python中if __name__ == ‘__main__‘作用补充:if __name__ == '__main__':的运行原理总...
    99+
    2022-11-13
  • Python编程中的if __name__ == 'main' 的作用和原理是什么
    这篇文章主要介绍“Python编程中的if __name__ == 'main' 的作用和原理是什么”,在日常操作中,相信很多人在Python编程中的if __name__ == 'main' 的作用和原理是...
    99+
    2023-06-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作