综上所述:name变量时所属系统变量,当在执行文件内使用时其值为main;但是当其他被调用模块中使用时,其值为被调用模块所属的路径;
二、name变量在实际中的使用作用
我们经常看到再程序中使用
if name == ‘main‘:
pass
我们在写程序时,经常是功能模块和业务逻辑模块分离,在写功能函数时,经常要进行调试函数是否正常,那么此时我们可以直接在功能模块最下面加上if name == ‘main‘: pass.这样就可以在下方直接来测试函数的功能了。
同时在其他模块来调用这些函数时,由于此时if语句不成立,所以此时将不会执行下面的代码块,也就是说在你在调用其他模块时,被调用的模块下方的if函数将不会被执行(在进行import module时,将会先加载整个模块的代码,可以参考http://blog.51cto.com/10836356/2095490),从而不会影响整个程序的正常使用。
总而言之:方便程序进行测试。
原文地址:http://blog.51cto.com/10836356/2095692