python私有方法的使用注意

美女程序员鼓励师

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学习指路:python基础教程

以上是 python私有方法的使用注意 的全部内容, 来源链接: utcz.com/z/544710.html

回到顶部