Python類下劃線是Python語(yǔ)言中的一種命名約定。Python中的下劃線有兩種使用方式:?jiǎn)蜗聞澗€和雙下劃線。
單下劃線(_)的使用方法:
class MyClass: def __init__(self): self._myvar = "Hello World" def display(self): print(self._myvar) obj = MyClass() obj.display() print(obj._myvar)
在以上代碼中,變量_myvar以單個(gè)下劃線(_)開頭。這意味著該變量是被視為受保護(hù)的變量,不建議從類外修改或訪問。但是,從內(nèi)部類或子類仍然可以訪問變量。在以上代碼中,display()方法可以訪問_myvar變量,但是在類外部訪問該變量會(huì)引發(fā)AttributeError錯(cuò)誤。
雙下劃線(__)的使用方法:
class MyClass: def __init__(self): self.__myvar = "Hello World" def display(self): print(self.__myvar) obj = MyClass() obj.display() print(obj.__myvar)
在以上代碼中,變量__myvar以雙下劃線(__)開頭。這意味著該變量是被視為私有變量,不建議從類外部訪問或修改。在以上代碼中,display()方法可以訪問__myvar變量,但是在類外部訪問該變量會(huì)引發(fā)AttributeError錯(cuò)誤。
Python中的命名約定告訴我們,單下劃線開頭的變量或方法是受保護(hù)的,雙下劃線開頭的變量或方法是私有的。但是,這些約定仍然只是建議,并沒有具體的限制。Python中的一切都是公開的,都可以被訪問,所以我們要遵循良好的編程習(xí)慣,遵守類下劃線的使用約定。