国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

18143453325 在線咨詢 在線咨詢
18143453325 在線咨詢
所在位置: 首頁 > 營銷資訊 > 建站知識 > 【python】python中的__name__到底是個(gè)什么東西?

【python】python中的__name__到底是個(gè)什么東西?

時(shí)間:2023-02-20 05:22:01 | 來源:建站知識

時(shí)間:2023-02-20 05:22:01 來源:建站知識

【python】python中的__name__到底是個(gè)什么東西?:

1. 概述

在python中,每個(gè).py文件稱為一個(gè)模塊(module),每個(gè)module又會有它自己的attribute(官方文檔翻譯為“屬性”)。對于一個(gè)空的.py文件,它也至少包含9個(gè)內(nèi)置attribute,這9個(gè)內(nèi)置attribute如下

['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__']

1.1 內(nèi)置attribute

比如,一個(gè)最簡單的demo.py文件如下

# demo.pyprint(dir()) # dir()函數(shù)用以查看該module的所有attribute執(zhí)行以后得到如下輸出結(jié)果

$ python demo.py['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__']

1.2 定義一個(gè)新的變量

如果在demo.py中定義一個(gè)變量a,那么該module的attribute就會多一個(gè):

# demo.pya = 1 # 定義一個(gè)變量aprint(dir())執(zhí)行結(jié)果如下(注意列表最后多了個(gè)'a')

$ python demo.py['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'a']

2. 執(zhí)行當(dāng)前文件

如果當(dāng)前文件被當(dāng)做主程序(main program)執(zhí)行時(shí)(注意python沒有main方法),那么當(dāng)前文件/模塊的__name__就會被定義為"__main__",如

# demo.pyprint(__name__)結(jié)果:

$ python demo.py__main__

3. 作為被import的module

3.1 同級文件import

如果某.py文件/module作為被import的模塊,那么該module的__name__將被定義為module的名字,如

# demo.py""".├── demo.py├── module.py"""from module import print_nameprint_name()

# module.py""".├── demo.py├── module.py"""def print_name(): print(__name__)執(zhí)行結(jié)果如下

$ python demo.pymodule

3.2 不同級文件import

如果不同級某.py文件/module作為被import的模塊,那么該module的__name__將被定義為module的名字,同時(shí)加上路徑,如

# demo.py""".├── demo.py├── trash| ├── module.py"""from trash.module import print_nameprint_name()

# module.py""".├── demo.py├── trash| ├── module.py"""def print_name(): print(__name__)執(zhí)行結(jié)果如下

$ python demo.pytrash.module

關(guān)鍵詞:

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉