zoukankan      html  css  js  c++  java
  • Python模块的__name__属性介绍

    属性介绍

    • __name__是一个变量,前后加了双下划线是系统定义的名字
    • A模块若是被B模块导入,在B模块中获取A模块"__name__"的值就是A模块的名字(即:文件名)
    • 若直接执行模块(即:执行.py文件),__name__的值为’__main__’

    使用示例

    1.现有python包结构如下:

    2. moduleApython.py模块代码及在该模块运行结果如下:

    # 获取模块的“__name__”数据,运行当前模块“__name__”的值是“__main__”
    # 获取__name__属性的值
    def get_name():
        return __name__
    
    # 运行此模块打印(被其他模块调用不运行):运行当前模块,__name__的值是__main__
    if __name__ == '__main__':
        print(f'运行当前模块,__name__的值是{get_name()}')

    3. moduleBpython.py模块代码及在该模块运行结果如下:

    # 获取模块的“__name__”数据,运行当前模块“__name__”的值是“__main__”
    print(f"当前模块__name__的值是:{__name__}")
    
    # 导入moduleBpython模块时,也会运行打印方法
    import moduleApython
    print(f"调用的模块的属性__name__的值是:{moduleApython.get_name()}")  # 模块的属性__name__的值是:moduleApython

    注:如果在moduleApython中测试已有的方法是否正确,使用“if __name__ == '__main__':”只在当前模块运行,避免被其他模块调用之后会执行自己的测试方法

  • 相关阅读:
    表删除 准备
    爱可生技术文档
    Bran的内核开发指南_中文版
    LINUX 内核内存管理
    Linux Container测试之block IO
    【实时文件同步】rsync+inotify-tools的安装与配置
    openlayer3 加载geoserver发布的WFS服务
    Geoserver跨域请求设置
    Bitmap 图片格式并用 C++ 读写 Bitmap
    C++中的对象初始化
  • 原文地址:https://www.cnblogs.com/jason2018524/p/12977189.html
Copyright © 2011-2022 走看看