您的当前位置:首页正文

python私有方法的使用注意

2024-08-01 来源:东饰资讯网

1、使用注意

单下划线的方法只是开发者之间的约定,解释器不做任何改变。

双下化下的方法,是私有方法,解释器会改名,改名策略和私有变量相同,【_类名__方法名】。方法变量都在类的【__dict__】中可以找到。

2、实例

class Myclass:
 
    def __init__(self,name,age=18):
        self.name = name
        self._age = age
 
    def __getname(self):
        return self.name
 
    def __getage(self):
        return self.name
 
a = Myclass("tom")
#print(a.__getname())    #   AttributeError: 'Myclass' object has no attribute '__getname'
#print(a.__getage())     #   AttributeError: 'Myclass' object has no attribute '__getage'
 
print(a.__dict__)   #   {'name': 'tom', '_age': 18}
print(a.__class__.__dict__)     #   {'__module__': '__main__', '__init__': <function Myclass.__init__ at 0x01ABC468>, '_Myclass__getname': <function Myclass.__getname at 0x01B06150>, '_Myclass__getage': <function Myclass.__getage at 0x01B064B0>, '__dict__': <attribute '__dict__' of 'Myclass' objects>, '__weakref__': <attribute '__weakref__' of 'Myclass' objects>, '__doc__': None}
print(a._Myclass__getname())    #   tom

以上就是python私有方法的使用注意,希望对大家有所帮助。更多Python学习指路:

显示全文