python 权限修饰符
阿里云大學人工智能學前小測驗-Python測試
10.Python權限修飾正確的是
A. 標識符開頭無下劃線,該變量或方法為公有權限
B. 標識符開頭雙下劃線,該變量或方法為私有權限
C. 標識符開頭單下劃線,該變量或方法為保護權限
D. 以上都正確
參考博文:https://www.cnblogs.com/yanyichao/p/4319348.html,感謝博主
關于python中訪問權限建議看一下這篇博文http://www.liujiangblog.com/course/python/45,畢竟以雙下劃線開頭的數據成員是不是一定就無法從外部訪問呢?其實也不是!本質上,從內部機制原理講,外部不能直接訪問__age是因為Python解釋器對外把__age變量改成了_People__age,也就是_類名__age(類名前是一個下劃線)。因此,投機取巧的話,你可以通過_ People__age在類的外部訪問__age變量。即Python的私有成員和訪問限制機制是“假”的,沒有從語法層面徹底限制對私有成員的訪問。
1 訪問權限
Python中變量(函數)的訪問權限與變量(函數)的名字有關
public object
protected _object import *?不會導入
private __object
system_use __object__
其中,單下劃線開頭,則不能通過import * 導入;雙下劃線開頭(且少于兩個下劃線結尾),則無法直接訪問,但是可以通過_classname__object訪問。
class A:
__age = 18
print(dir(A()))
print(A()._A__age)
2 名字修飾
名字修飾是現代計算機程序設計語言的編譯器用于解決由于程序實體的名字必須唯一而導致的問題的一種技術。?
Python語言的名字修飾用于類的“私有”(private)成員。這種類成員的名字由前導雙下劃線開頭,并且后綴下劃線不能多于一個。例如__thing將被名字修飾,___thing和__thing_同樣也會被名字修飾,但是__thing__和__thing___就不會被名字修飾。Python運行時庫不限制訪問這些成員,名字修飾只是用來避免擁有同名成員的派生類發生名字沖突。
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的python 权限修饰符的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 查看当前系统Python版
- 下一篇: python 魔法参数*argv 和 *