if __name__==‘__main__‘: 该如何理解
自己在写接口自动化测试的代码的时候,在一个示例代码中看到这样的语句:
很疑惑为什么突然出来这么一句代码,后来查阅资料理解如下:
__name__:是当前模块名,这里就是getpathInfo;
__main__:是执行该脚本的模块名;
上面的name 比较好理解,当前模块名,实不会变化的,一直都是getpathInfo;
但是main的名字是会变的,执行该模块的模块名,比如在另外一个test.py的模块中执行下面的操作:
import getpathInfo
那么test模块运行getpathInfo 的时候,__main__就是test,而不是getpathInfo,所以只有直接执行getpathInfo这个模块的时候,
__name__ 跟 __main__ 才相等。
那这句代码有啥用呢,为啥不直接执行get_path()呢?不是会更简单吗?
其实这句代码的作用在程序开发中还是很大的,比如: