if__name__=='__main__'到底是个啥?你在写Python代码的时候有没有遇到这么一句if__name__=='__main__'有些比较好奇的朋友想知道为啥要这样写那么接下来就来告诉你为啥当你在写.py的时候一般是以两种方式存在的1、作为脚本直接运行了2、作为模块给别人导入你的代码在被执行的时候Python解释器会先去读取你的Python代码然后定义一些全局的内置变量而我们常常写的这个__name__就是其中的变量之一有些人会这样判断__name__的值是__main__就说明这里是程序入口不过这里的运行结果是这里按顺序运行先执行的是打印name这和java有点不同没有所谓的主函数那么这个__name__是来干嘛的把if__name__=='__main__'去掉不也能照样运行我们再定义一个方法专门用来打印变量name的值直接运行可以看到name的值是main接着我们把这个文件命名为A.py作为模块给B.py导入直接importA然后运行运行可以看到A模块的调⽤都被执⾏了⽽且有⼀点很不同的是这⾥的name值是A⽽不是__main__到这⾥你会发现当.py直接运⾏的时候__name__的值是__main__⽽当.py被当作模块导⼊的时候__name__的值是模块的名称我们接着修改一下A.py本来是这样的现在改成这样再运行B.py这次就不会运行到A的调用了所以你的.py可以作为自己的脚本运行在main中做一些测试或者本身程序的运行当然你也可以使用你的.py作为模块给别人使用给别人提供一些便利为了不让别人一导入你的模块就直接运行整个脚本使用if__name__=='__main__'