国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

黑客 - Python模塊安全權(quán)限

瀏覽:143日期:2022-06-29 09:36:48

問題描述

現(xiàn)在需要開發(fā)一個(gè)插件系統(tǒng)。 插件系統(tǒng)所有人都可以編寫PY文件即可加載。但是需要引入主程序的庫 比如

# test.pyfrom lib.function import *...

如何防止用戶訪問lib里面的其他方法或者變量呢?

all 如果加上名稱,我主程序需要調(diào)用所有*的話,可以嗎?

問題解答

回答1:

在python并沒有真正的私有變量或者方法, 所以基本上是無法阻止別人訪問另一個(gè)模塊的方法或者變量, 但是如果用戶是通過from lib.function import *, 那么我們可以通過__all__屬性去設(shè)置*能被import指定的變量或方法, 例如:

cat abc.py__all__ = [’bar’]waz = 5bar = 10def baz(): return ’baz’cat b2.pyfrom abc import *print(dir())# 輸出:[’__builtins__’, ’__doc__’, ’__file__’, ’__name__’, ’__package__’, ’bar’]

可以看到在b2.py的輸出, 并沒有bar和baz, 所以我們可以通過這種方式, 來做一個(gè)簡(jiǎn)單的控制, 當(dāng)然下劃線開頭的私有變量也限制了, 但這種限制對(duì) import abc這種引入方式無效

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产男女在线观看 | 国产日韩不卡免费精品视频 | 久久久久久福利 | www日本免费 | 久久久久久久久性潮 | 精品国产免费一区二区三区 | 成人人免费夜夜视频观看 | 国产成人一区二区三区在线视频 | 亚洲第3页 | 欧美高清一区二区 | 日韩精品一区二区三区视频 | 亚洲视频在线观看 | 男人的天堂视频在线观看 | 欧美亚洲国产精品久久久 | 国产精品成人免费视频不卡 | 国产精品亚洲一区二区三区在线观看 | 操操操网 | 成人久久免费视频 | 大香伊蕉国产短视频69 | 久久一日本道色综合久久m 久久伊人成人网 | 人成午夜性刺激免费 | 18视频免费网站 | 午夜剧场福利社 | 亚洲国产第一 | 在线免费观看成年人视频 | 亚洲精品国产福利一区二区三区 | 亚洲一区日韩一区欧美一区a | 午夜国产高清精品一区免费 | 久久精品中文字幕不卡一二区 | 日韩在线视频线视频免费网站 | 九九黄色影院 | 草草伊人| 亚洲欧美v视色一区二区 | 手机看片日韩日韩韩 | 国产在线日韩在线 | 私人玩物福利 | 欧美日韩亚洲一区二区三区 | 国产精品无打码在线播放9久 | 免费一看一级毛片全播放 | 中文字幕一区二区在线观看 | 国产精选一区二区 |