__name__ ==“__main__”的作用

1. __name__==“__main__”作用

    mymodule.py作为一个模块,我们希望保留末尾测试代码,即上面调用函数和类,但也不希望再导入模块的时候执行。该怎么办呢?

    可以利用Python文件的一个内置属性__name__实现,如果直接运行Python文件,__name__的值是"__mian__",如果import一个模块,那么模块的__name__的值是"文件名"。
  • 示例

    # vi mymodule.py
    name = "zhangsan“
    def count(a, b):
    	result = a * b
    	return f"{a}与{b}的乘积是: {result}“
    
    if __name__ == "__main__":
      print("我在手动执行这个程序")
      print(count(6,6))
      print(name)
    

2. 案例

#!/usr/bin/env python3
# _*_ coding: utf-8 _*_
# Author:shichao
# File: .py

name = "张三"
def Chen(a,b):
    result = a * b
    return f"{a}与{b}的乘积是: {result}"

class Count():
    def __init__(self,a,b):
        self.a = a
        self.b = b

    # 功能
    def count(self):
        return self.a * self.b




if __name__ == "__main__":
    print("我在手动执行这个程序")
    s = Count(5,6)
    print(s.count())
    print(name)