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__':”只在当前模块运行,避免被其他模块调用之后会执行自己的测试方法

  • 相关阅读:
    Spring解决循环依赖的三种方式
    MySQL深度分页
    MySQL大数据量分页查询方法及其优化
    java进程 cpu100%问题排查
    Java线程池如何合理配置核心线程数
    Btree和B+tree的区别
    Python3 for Linux 安装
    redis sentinel 相关参数及命令
    postman 连接mysql
    oracle-数据库的各种-锁-详解
  • 原文地址:https://www.cnblogs.com/jason2018524/p/12977189.html
Copyright © 2011-2022 走看看