pythonpythonpython—if __ name __ == ‘__ main __’
上次我们讲了python的__name__,知道了__name__的一些功能,我们今天就讲讲python的__name__的最后,也是最重要的一个。
C++
C++跟__name__和python都没什么联系,不过C++有一个程序入口叫”int main(){}”还是”void main(void)”来着,都行。(反正我试了)
#include
using namespace std;
int ma
开门见山地说,python中if __name__ == __main__的作用是作为程序运行的入口。(任何程序都只能有一个入口)
如果写一个独立的简单的脚本,那么我们会发现脚本是顺序执行的。似乎没有if __name__ == __main__程序也能正常运行,例如:
for i in range(10):
if i % 2 == 0:
print(i)
输出:0 2 4 6 8
程序是不受影响。对于想对大一些的脚本(结构上),如果我们有这样两个脚本(在一个文件夹下)
1、注意:pool必须在 if __name__ == ‘__main__’ 下面运行,不然会报错
2、多进程内出现错误会直接跳过该进程,并且默认不会打印错误信息
3、if__name__下面的数据需要通过参数传入主函数里面,不然主函数获取不到该数据值而报错。
4、若不通过传参形式传入数据,可以定义全局变量。但是全局变量的值不能在多进程里面进行修改。
代码如下
from multiprocessing import Pool # 进程池,用于多进程
import os # 用于获取当前执行的文