国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Python 的 __all__ 為什么不能防止「不被導(dǎo)出的內(nèi)容, 就不能訪問(wèn)」?

瀏覽:161日期:2022-07-18 13:35:20

問(wèn)題描述

實(shí)際現(xiàn)象

期待 __all__ 能控制模塊的訪問(wèn)

按照社區(qū)契約, 私有的東西以_開(kāi)頭, 但是最近發(fā)現(xiàn)有個(gè)同事調(diào)私有接口(我寫(xiě)的模塊)

Python是靈活的語(yǔ)言, 不成文的規(guī)定是「約定大于配置」

預(yù)期現(xiàn)象

搜索了 __all__的資料, 還以為能滿足我的要求, 但是完全不能( 見(jiàn)下文 )

問(wèn)題

那么, __all__好像一點(diǎn)用處都沒(méi)有?

相關(guān)代碼

base.py

__all__ = (’a’, ’b’, )a = 1 b = 2 c = 3 # 不希望別人訪問(wèn)

test.py

import base print(base.c)

輸出

3環(huán)境

Python 2.7

問(wèn)題解答

回答1:

test.py 文件改為

from base import *print aprint bprint c

結(jié)果如下:

? python test.py ?12Traceback (most recent call last): File 'test.py', line 8, in <module> print cNameError: name ’c’ is not defined回答2:

在Python中沒(méi)有什么是真正私有的

標(biāo)簽: Python 編程
主站蜘蛛池模板: 慈利县| 高邑县| 白山市| 海盐县| 卫辉市| 桑植县| 大同县| 资中县| 云和县| 上思县| 津南区| 平原县| 巴青县| 高阳县| 江安县| 关岭| 仙居县| 富锦市| 大庆市| 虹口区| 洞口县| 灌云县| 嵊州市| 界首市| 洞口县| 仲巴县| 乌兰察布市| 府谷县| 米泉市| 通许县| 罗甸县| 正定县| 桑日县| 舒兰市| 定州市| 合作市| 县级市| 吉木萨尔县| 东港市| 城固县| 田东县|