python中if __name__ == ‘__main__‘是干嘛的?python需要入口函数吗?

如果你想知晓python中if __name__ == '__main__'是干嘛用的,请往下滑!!!看到第五节!!!

一、其它语言的主函数

如果你写过java,就一定知道这个!

如果你写过C,那你一定知道int main()

int main()
{
    printf("Hello World");
    return();
}

二、python真的有main主函数吗

写python就简单多了,大部分人肯定是0帧起手,直接print()。

print("Hello World")

如果你python练习时长超过2周半那你一定见过第三节!!!!!

三、Github和AI代码中出现无数if __name__ == '__main__'

不管是教程中,还是github上的示例,gpt写的代码,全都是if __name__ == '__main__'。

看起来很像C/C++,java里面的入口main函数。

可是python不是不需要入口函数吗?

那这个出现的意义在哪里?

这是多此一举吗?

四、看看__name__这个变量是个啥

print(__name__)这个变量发现,不管放在程序的哪个位置,都是'__main__'这个值。

那这个判断有什么意义呢?

无论何时都可以进入条件!

五、if __name__ == '__main__'真实用法

要搞清楚什么时候不等于,不进入下面判断

if __name__ == '__main__'

那需要先了解一下py代码可以怎么样执行,黄金以上选手肯定了解py文件就是一个模块。

运行后可以发现,import导入一个模块后,模块内的代码会直接运行

那我们顺势来看看这个hello导入后,这边输出print(__name__)是什么吧!

它变了,变成了文件名,那这时候是不是就不等于'__main__',

所以这个if __name__ == '__main__'是用来判断,当前文件代码是否能够被直接运行!

没错!那这样的话

运行方式__name__
 xxx.py'__main__'
import xxx'xxx'

当文件直接运行时,文件中的__name__都是'__main__';

当文件是导入运行时,文件中的__name__是文件名;

那有什么用呢???

对于一些既需要直接运行,又需要作为模块调用的代码,加入if __name__ == '__main__'就非常有必要了!

运行hello.py文件

运行test_1.py文件

两者效果显而易见,通过 if __name__ == '__main__':,你可以确保一些代码仅在该 Python 文件作为主程序执行时运行,而在作为模块导入时不会执行。

这样做可以避免在导入时执行不必要的代码。

每天学习一个小技巧!!!

能力提升显而易见!

智者不惑仁者不忧!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值