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

先来个小栗子:

先创建一个f1的py文件

li ='我想和你好好的'
def func1(): print('li',li) func1()执行结果:li 我想和你好好的

再创建一个s1的py文件

from f1 import li
def func2(name):return str(li) + namedef func3():print('只要这个',func2('  最后的好梦渐渐消失')) func3()
执行结果li 我想和你好好的我只要这个 我想和你好好的  最后的好梦渐渐消失

可以看到,f1中的func1函数也被执行了,那如何不让执行呢?

这时,if __name__ == '__main__' 就派上了用场

将f1代码修改一下

li ='我想和你好好的'
def func1():   print('li',li) 

if __name__ == '__main__':   func1()

再重新执行s1文件

我只要这个 我想和你好好的  最后的好梦渐渐消失

所以,if __name__ == '__main__' 我们简单的理解就是: 如果模块是被直接运行的,则代码块被运行,如果模块是被导入的,则代码块不被运行

转载于:https://www.cnblogs.com/jassin-du/p/9104225.html

Python 中的 if __name__ == '__main__'相关推荐

  1. 如何简单地理解Python中的if __name__ == '__main__'

    如何简单地理解Python中的if __name__ == '__main__' 文章目录: 一.摘要 二. 程序入口 虽然已经知道这个具体的用法,但是这篇文章有很多细节写的还是很好,决定转载一下,日 ...

  2. Python 中的 if __name__ == __main__ 该如何理解

    Python 中的 if __name__ == "__main__" 该如何理解 原文链接: http://blog.konghy.cn/2017/04/24/python-en ...

  3. 2020-12-11 Python中的 if __name__ == “__main__“

    Python中的 if __name__ == "__main__" 对于Python初学者来说,在看别人代码时经常会看到if __name__ == "__main__ ...

  4. python中使用if __name__ == '__main__':

    引子 在python中,假设在一个test1.py的模块中定义了一个foo函数,然后调用函数foo进行测试的时候会产生一个内存空间.当你把这个模块导入到test2.py模块中,接下来如果在test2. ...

  5. Python中的if __name__ == ‘__main__‘

    if name == 'main'的意思是:当.py文件被直接运行时,if name == 'main'之下的代码块将被运行:当.py文件以模块形式被导入时,if name == 'main'之下的代 ...

  6. 如何快速简单粗暴地理解Python中的if __name__ == ‘__main__‘

    1. 摘要 通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明'):在你自己眼中,你是你自己(__name__ == '_ ...

  7. 解惑(二)----- 如何通俗地理解Python中的if __name__ == ‘__main__‘

    1. 摘要 通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明'):在你自己眼中,你是你自己(__name__ == '_ ...

  8. 简单理解Python中的if __name__ == '__main__'

    1. 摘要 通俗的理解__name__ == 'main':假如你叫小明.py,在朋友眼中,你是小明(name == '小明'):在你自己眼中,你是你自己(name == 'main'). if na ...

  9. 一个实例告诉你Python中关于 if __name__ == ‘__main__‘ 有何作用

    文章目录 前言 正文 .py源文件 实例现象 运行原理 前言 相信大部分开发者对于"程序入口"这个概念并不陌生.对于很多编程语言来说,程序都必须要有一个入口,比如既保留C语言面向过 ...

  10. Python 中的 if __name__ == '__main__' 该如何理解

    程序入口 对于很多编程语言来说,程序都必须要有一个入口,比如 C,C++,以及完全面向对象的编程语言 Java,C# 等.如果你接触过这些语言,对于程序入口这个概念应该很好理解,C 和 C++ 都需要 ...

最新文章

  1. WPF:自动执行机器人程序若干注意事项
  2. 如何同时展现不同粒度的度量
  3. 《编译原理》课程教学大纲
  4. 文件循环读取_一个案例轻松认识Python文件处理提取文件中的数字
  5. mysql函数未定义_未定义的函数,MYSQL错误
  6. python读取api接口频率_Python基础(API接口测试)
  7. Spring 核心控制器DispatcherServlet(二)
  8. 利用Python下载文件
  9. win7录屏_这款高清免费无水印的录屏软件,99%的人用过都说好!
  10. 游戏测试基础:适配性测试
  11. Ubuntu 图标主题 Nitrux 升级
  12. OLLYDBG逆天 往事随风修改专版
  13. pmv计算c语言软件,Fluent 软件
  14. Linux:error while loading shared libraries: /usr/lib/xx.so.xx: file too short
  15. 编译原理课堂笔记(1)编译概述
  16. Omnipeek空口抓包(2):扫描无线网络
  17. java学习日记-进阶三
  18. 从一笔金币充值去思考分布式事务
  19. liunx查看ftp服务器文件目录,linux查看ftp服务器目录
  20. AlphaFold/run_alphafold.py代码阅读理解

热门文章

  1. mpg123解码相关
  2. Extjs使用(最最基础)
  3. JQuery获得绝对,相对位置的坐标方法
  4. C# 3.0语言新特性(语言规范):4 对象和集合初始化器
  5. 【Git/Github学习笔记】Git课程简介
  6. 基于麻雀算法优化的Tsallis相对熵图像多阈值分割 -附代码
  7. Pytorch——用50行代码搭建ResNet
  8. Matlab 绘制箱线图
  9. windows使用Charles手机抓包
  10. 工具记录,使用jarsigner 对APK进行签名