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__':”只在當前模塊運行,避免被其他模塊調用之后會執行自己的測試方法

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM