Python编程中的if __name__ == 'main' 的作用和原理是什么

技术Python编程中的if __name__ == main 的作用和原理是什么这篇文章主要介绍“Python编程中的if __name__ == main 的作用和原理是什么”,在日常操作中,相信很多人在Python

本文主要介绍“Python编程中if _ _ name _ _=‘main’的功能和原理是什么”。在日常操作中,相信很多人对Python编程中if _ _ name _=' main '的功能和原理有所怀疑。边肖查阅了各种资料,整理出简单易用的操作方法,希望回答“Python编程中的If _ in”。接下来,请和边肖一起学习!

__name__是当前模块名,模块直接运行时,模块名为__main__。这句话的意思是,模块直接运行时,会运行下面的代码块,模块导入时,不会运行代码块。

相信初学者在学习Python的过程中难免会遇到if __name__=='main '语句。虽然他们总是知道它的功能,但它可能总是模糊的。今天我就举个例子来说明我的理解。

例如,我们在下面的test.py中编写了以下代码:

print(' Love Python ')defmain(): print(' Love Python ')if _ _ name _ _==' _ _ main _ _ ' : main()print('跟着菜鸟分析,练Python,多练多爱')运行代码,输出结果为:

Python编程中的if  __name__ == 'main' 的作用和原理是什么

然后,在同一个文件夹中创建一个名为import_test.py的新脚本,并只输入代码:

Importtest运行代码,输出为:

Python编程中的if  __name__ == 'main' 的作用和原理是什么

与之前的test.py代码运行结果相比,只执行了输出Python之前的语句,即if __name__=='__main__':后续的语句没有执行。

这是为什么?别担心,菜鸟分析会继续给你举例,直到你绝对满意,最后有一种豁然开朗的感觉。

现在,我们在test.py脚本的if _ _ name _=' _ _ main _ _' 3360之前添加print __name__即打印出__name__,最终运行结果如下:

Python编程中的if  __name__ == 'main' 的作用和原理是什么

可以看出变量__name__的值是“__main__”。

再次执行import_test.py,模块内容和执行结果如下:

Python编程中的if  __name__ == 'main' 的作用和原理是什么

此时import_test.py中__name__的变量值为test,不满足__name__=='__main__ '的条件,后续代码无法执行。

哈哈,你马上明白了吗?我觉得挺好的。给菜鸟分析一个赞!

再想想,它的运行原理是:

由于每个Python模块(Python文件)都包含内置变量__name__,因此在运行模块时,__name__等于文件名(包括后缀)。py)。如果导入到其他模块中,__name__等于模块名(不包括后缀。py)。并且“_main__”等于当前执行文件的名称(包括后缀。py)。因此,直接执行模块时,__name__=='__main__ '为真;当模块导入其他模块时,__name__=='__main__ '的结果为false,即不调用相应的方法。

简而言之,__name__是当前模块名,当模块直接运行时,模块名为__main__。模块直接运行时,会运行代码,模块导入时,不会运行代码。

至此,“Python编程中if __name__=='main '的作用和原理是什么”的研究结束,希望能解决大家的疑惑。理论和实践的结合可以更好的帮助大家学习,所以赶紧试试吧!如果你想继续学习更多的相关知识,请继续关注网站,边肖会继续努力,给大家带来更多实用的文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/48998.html

(0)

相关推荐

  • 对女生的称呼,男孩子如何称呼女孩子比较好

    技术对女生的称呼,男孩子如何称呼女孩子比较好虽然我们看不透人心对女生的称呼,但是我们可以用自己的心感受到谁对我们好,谁有对我们不好。看了一个像是段子又不是段子的调侃:喜欢你的时候,是亲爱的。不喜欢你的时候,是猪。想你的时

    生活 2021年10月22日
  • C语言怎么实现内存对齐

    技术C语言怎么实现内存对齐这篇文章主要讲解了“C语言怎么实现内存对齐”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言怎么实现内存对齐”吧!  一、概念      

    攻略 2021年12月8日
  • sparkstreaming统计(sparkstream实时计算结果)

    技术SparkStreaming算子开发实例分析本篇文章为大家展示了SparkStreaming算子开发实例分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Spark Stre

    攻略 2021年12月17日
  • 赞美柳树的句子最短的,咏柳中借柳树赞美春天的句子

    技术赞美柳树的句子最短的,咏柳中借柳树赞美春天的句子《咏柳》一诗中,借描写柳树,歌颂春天,赞美了大自然呈现出的勃勃生机赞美柳树的句子最短的。原文:咏柳唐 贺知章碧玉妆成一树高,万条垂下绿丝绦。不知细叶谁裁出,二月春风似剪

    生活 2021年10月22日
  • C++中为什么gsl::joining_thread好于std::thread

    技术C++中为什么gsl::joining_thread好于std::thread本篇内容主要讲解“C++中为什么gsl::joining_thread好于std::thread”,感兴趣的朋友不妨来看看。本文介绍的方法

    攻略 2021年11月25日
  • 双网卡问题

    技术双网卡问题 双网卡问题目录双网卡问题问题问题一问题二总结问题三
    双网卡问题
    问题环境介绍:
    如上图所示,PC-A有两卡网卡,注意,网卡一设置有默认网关,而网卡二并没有,网卡二只有IP和掩码,网卡的默

    礼包 2021年11月27日