关于python中if __name=‘__main__‘的理解

如何简单地理解Python中的if __name__ == ‘__main__‘ 1. 摘要通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明');在你自己眼中,你是你自己(__name__ == '__main__')。if __name__ == '__main__'的意思是:当.py文件被直接运行时,if __name__ == '__main__'之下的代码块将被运行;当.py文件以模块形式被导 阅读详情

关于’__name __’

首先创建两个py文件A.py和B.py,我们来看一下他们各自的‘__name __’属性。

A.py

print('this is A.my __name__ is: '+__name__)

B.py

print('this is B.my __name__ is: '+__name__)

输出结果如下:
name属性
由此可见它们的__name__属性都是__main__。如果我们在A中引入B,即
在A的文件中加入import B语句。再看一下各自的__name__属性。
A.py:

import B
print('this is A.my __name__ is: '+__name__)

执行结果:
在这里插入图片描述
当B被引入时,B的__name__属性变成了自己的文件名,A依然是__main__。

为什么要使用 if __name __ == ‘__main’

可以看到刚才A在导入B的时候,B中的输出语句被自动执行了,这显然不是我们想看到的。一个py文件作为模块被导入的时,其中的函数会自动执行。在B.py中加入 if__name__ == ‘main’ 。把B中的print语句写在if 判断的下面。

if __name__  ==  '__main__' :
    print('this is B.my __name__ is: '+__name__)

再次执行A。结果如下:
在这里插入图片描述
这次执行结果中就没有了B的输出语句。在设计一个被其他文件引入的模块时,可以将函数调用语句放到 if__name__ == ‘main’ 下面。这样import模块时就不会自动执行了。因为被引入的模块的 name__属性是文件名,不是__main___。
以上是我的粗浅理解。

Python中if __name__ == '__main__'作用解析 主要介绍了Python中if __name__ == '__main__'作用解析,这断代码在Python中非常常见,它有作用?本文就解析了它的作用,需要的朋友可以参考下 立即下载

相关推荐

海康威视Web3.0插件实战:快速部署摄像头实时预览方案

本文详细介绍了海康威视Web3.0插件的实战应用,包括快速部署摄像头实时预览方案的完整流程。从插件下载安装到摄像头连接配置,再到浏览器兼容性解决方案,帮助开发者和IT人员高效实现网页端监控功能。特别针对预览功能调优和多摄像头管理等高级应用提供了实用技巧。

weixin_29266679的博客 346

【Python】main函数 if __name__=='__main__' 详解

引言 我们先看下各个编程语言的代码框架输出Hello,World C #include <stdio.h> int main() { printf("Hello, World! \n"); return 0; } C++ #include<iostream> using namespace std; int main() { cout<<"HELLO...

Z小旋 2万+

中科蓝讯(第一次使用指南)

中科蓝讯 新手指南

qq_48579018的博客 1万+

Python里“__main__”是干啥的?

打开PyCharm或者别人的代码,经常会看到一行:所以这行代码是干啥用的?好像不用这行也能运行?虽然这是个很基础的问题,但因此它常常被忽略,就比如我自己以前也是着急上手py,直到今天才认识它。__ name__ == '__ main__'是Python的main函数入口,但并不是有这行代码才能运行,这里只是可以判断代码是否被直接执行还是被调用执行。气氛都烘托到这里了,动手写几行代码验证一下!新建...

a18065597272的博客 1324

OpenClaw智能体应用第一集--飞书多智能体配置

本文介绍了智能体(Agent)的核心概念与配置实践。Agent作为独立作用域的"大脑",包含模型(认知引擎)、记忆系统(短期/长期记忆)、人设(角色定义)、工具(外部能力调用)、规划执行(任务拆解)、运行环境等核心要素。每个Agent拥有唯一agentId标识,通过accountId区分渠道账号,Binding机制实现消息路由。实践部分展示了通过命令行配置多个智能体(如writer)的过程,包括插件注册和工具加载。系统支持多Agent架构,可根据不同场景需求灵活配置专属智能体。

weixin_44626085的博客 1747

【华为鸿蒙3.0/荣耀安卓12使用VMOS Pro的激活方式 方法二】

关于荣耀手机安卓12如何解除进程限制,这里提供以下教程供小伙伴们参考。

Amy_mumu的博客 13万+

__main__用法大揭秘

欢迎加入我们卧虎藏龙的python讨论qq群:729683466大家在网上下载python代码的时候有时候会遇到这样的问题有些工程里面包含了很多py文件其中只有一个主函数如何让这么多py...

qq_42680814的博客 7772

块存储:AIO的直接写流程注释

提交io流程中aio_write之前函数的注释,可参考“块存储:AIO的直接读流程注释”。

yiyeguzhou100的专栏 1334

Python中的if __name__ == ‘__main__‘

1、简单来说, name == ‘main’:假如你叫小明.py,在朋友眼中,你是小明(name == ‘小明’);在你自己眼中,你是你自己(name == ‘main’)。 if name == 'main’的意思是:当.py文件被直接运行时,if name == 'main’之下的代码块将被运行;当.py文件以模块形式被导入时,if name == 'main’之下的代码块不被运行。 2、if name == 'main’相当于Python模拟的程序入口,Python本身并没有这么规定,这只是一种编码习

ciwei24456的博客 5464

Python爬虫实战:携程旅游平台数据爬取(酒店+机票+景点),破解加密与反爬(附完整代码)

携程的反爬机制再复杂,核心逻辑都是“识别非真实用户的请求”,而爬虫的核心就是“让请求看起来像真实用户的行为”。本文的方案从登录态处理、参数加密破解、动态数据抓取,到反爬应对,都是围绕“模拟真实”展开:用Playwright模拟真实浏览器登录,用住宅代理模拟真实用户IP,用随机延迟模拟真实用户的操作频率。掌握了这个核心思路,无论平台的反爬如何升级,都能找到应对方法。当然,爬虫技术是一把双刃剑,合理使用才能发挥其价值。如果你的爬虫项目中遇到了携程的反爬问题,不妨按照本文的步骤试试,大概率能解决问题。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 2606

采样率转化代码C++(有理倍数,升采样、降采样均可)

【代码】采样率转化(有理倍数,升采样、降采样均可)

goudahai的专栏 547

Python中if __name__==‘__main__‘用法介绍

我们先定义一个test01.py的文件。 test01.py中代码如下所示: def step(): print(__name__) print('step1 买菜' 'step2 洗菜' 'step3 切菜' 'step4 炒菜') if __name__=='__main__': print('准备制作菜品') step() print('制作完成') 输出结果: 注意:这段代码中输出的第一句。 pri

zy的博客 1042

向华为学习——IPD流程体系之IPD术语

《IPD体系核心概念与业务术语解析》摘要: IPD(集成产品开发)是一种以市场为导向的结构化产品开发管理模式,通过跨部门协作、异步开发、CBB(通用构建模块)和管道管理等手段,实现产品全生命周期高效管理。体系包含七大核心要素:跨部门团队(如IPMT决策层、PDT执行层)、结构化流程(分阶段评审)、端到端项目管理(WBS分级计划)、客户需求分析、投资组合优化及质量管控(TR技术评审)。各业务领域术语涵盖财务(NPV、IRR)、开发(需求分解、基线化)、制造(可制造性设计)、采购(Sourcing团队)及市场(

cdfunlove的博客 482

python:对if _name_ = _main的理解

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

lizhaoyi123的博客 152

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

如何理解Python中的 if _ _name_ _='_ _main_ _'

一个Python文件(.py)有两种运行方式: 1.直接运行; 2.作为模块,导入其他的Python脚本中运行。 if __name__ == '__main__'的意思是: 当.py文件被直接运行时,if __name__ == '__main__'之下的代码块将被运行; 当.py文件以模块形式被导入时,if __name__ == '__main__'之下的代码块不被运行。 ...

芃晟的博客 1033

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

python中if _name_=main的用法_Python 中的 if __name__ == '__main__' 该如何理解

对于很多编程语言来说,程序都必须要有一个入口,比如 C,C++,以及完全面向对象的编程语言 Java,C# 等。如果你接触过这些语言,对于程序入口这个概念应该很好理解,C 和 C++ 都需要有一个 main 函数来作为程序的入口,也就是程序的运行会从 main 函数开始。同样,Java 和 C# 必须要有一个包含 Main 方法的主类来作为程序入口。而 Python 则有不同,它属于脚本语言,不像...

weixin_39959369的博客 91

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

python中if _name_=main的用法_正确理解Python中if __name__ == '__main__'

在Python,我们经常会编写if __name__ == '__main__'这么一段代码,这段代码该怎么来理解?这段代码的功能理解如下:一个python的文件有两种使用的方法:作用一,直接作为脚本执行。作用二,import到其他的python脚本中被调用(模块重用)执行。if __name__ == '__main__': 的作用就是控制这两种情况执行代码的过程,在if __name__ ==...

weixin_39758229的博客 382

python中__name__=__main__Python 中“if __name__=='__main__':”理解与总结

1 引言在 Python 当中,如果代码写得规范一些,通常会写上一句if __name__==’__main__':作为程序的入口,但似乎没有这么一句代码,程序也能正常运行。这句代码多于吗?原理又在哪里?本贴对此进行总结说明。2 程序入口学过 Java、C、C++ 的程序员应该都知道,每次开启一个程序,都必须写一个主函数作为程序的入口,也就是我们常说的 main 函数。如下所示, main() 就...

weixin_39815345的博客 117

python中‘if __name__="__main__":’理解

__name__有两个取值:当模块直接执行时,该变量取值为__main__;当模块被其他模块调用执行时,变量取值为模块的名字。

qq_38242289的博客 193

Python 中 if __name__="__main__"的作用

刚刚开始使用Python的时候看到有很多人写程序的时候最后都会加上个if __name__="__main__"判断语句,一开始不太理解,为了让更多的初学者更透彻的理解Python,这里说下这个判断语句的作用。 这条if语句的作用是,允许程序员要么将模块当做一个独立的程序运行,要么从shell或另外一个模块导入它。其工作方式如下。每个Python模块都包含一组内建的模块变量。当加载该模块的时候,...

qq_38375282的博客 242

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

1. 摘要 通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明');在你自己眼中,你是你自己(__name__ == '__main__')。 if __name__ == '__main__'的意思是:当.py文件被直接运行时,if __name__ == '__main__'之下的代码块将被运行;当.py文件以模...

weixin_33980459的博客 2万+

python中 if__name__ == "__main__"的理解

有时候经常看到 python 代码中含有 if __name__ == '__main__' 的代码 ,但是却一直不知道是什么意思,可以通过相应的代码去试验即可知道其作用。 一、 理解 我们知道每个python文件既可以被直接执行,则可以作为脚本导入到其他文件中。从而构建各个模块的联系。而 if__name__ == '__main__' 的作用也是用来区分是自己作为自己的文件进...

HEERY551的博客 1万+

if __name__ == ‘__main__‘ 如何正确理解?

if name == ‘main’ 如何正确理解? 通俗的理解__name__ == ‘main’:假如你叫小明.py,在朋友眼中,你是小明(name == ‘小明’);在你自己眼中,你是你自己(name == ‘main’)。 if name == 'main’的意思是:当.py文件被直接运行时,if name == 'main’之下的代码块将被运行;当.py文件以模块形式被导入时,if name == 'main’之下的代码块不被运行。 1、这段代码的功能 一个python的文件有两种使用的方法,第一是

hs6605015的博客 2万+

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

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34360651的博客 3622

Python中的【if __name__=='__main__':】

1、Java和C#的程序入口 Java的程序入口Main函数 public static void Main(string[] args) { //方法体 } C#的程序入口Main函数 public static void Main(string[] args) { //方法体 } 2、Python的程序入口 (1)Python不需要Main函数也能执行 Python不同于以上...

Adele的专栏 2万+

python 关于main函数以及if __name__=='__main__'的理解

1.main函数: 在C/C++/Java中,main是程序执行的起点,Python中,也有类似的运行机制,但方式却截然不同:Python使用缩进对齐组织代码的执行,所有没有缩进的代码(非函数定义和类定义),都会在载入时自动执行,这些代码,可以认为是Python的main函数。 每个文件(模块)都可以任意写一些没有缩进的代码,并且在载入时自动执行,为了区分主执行文件还是被调用的文件,Pytho...

xiachong27的博客 3922
上一篇: python整理桌面,让桌面干净清爽井井有条。
下一篇: 项目管理中PBS、WBS与OBS的关系
bingoCoder
博客等级 码龄10年 1400粉丝 157原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值