Rumah >pembangunan bahagian belakang >Tutorial Python >什么是python类属性?类的私有属性是什么?(实例解析)
在这篇文章之中我们来了解一下关于类的知识,有些朋友可能是刚刚接触到python这一编程语言,对于python类属性这一方面不是特别的了解,但是没关系接下来这篇文章将会来带大家来学习一下python类属性方法这一方面的知识,好了,废话不多说我们开始进入文章开始学习吧。
类的私有属性
__private_attrs:两个下划线开头,声明该属性为私有,不能在类的外部被使用或直接访问。在类内部的方法中使用或直接访问。在类内部的方法中使用时 self.__private_attrs。
类的方法
在类的内部,使用 def 关键字可以为类定义一个方法,与一般函数定义不同,类方法必须包含参数 self,且为第一个参数。
类的私有方法
__private_method:两个下划线开头,声明该方法为私有方法,不能在类的外部调用。在类的内部调用 self.__private_methods。
实例如下:
#!/usr/bin/python # -*- coding: UTF-8 -*- class JustCounter: __secretCount = 0 # 私有变量 publicCount = 0 # 公开变量 def count(self): self.__secretCount += 1 self.publicCount += 1 print self.__secretCount counter = JustCounter() counter.count() counter.count() print counter.publicCount print counter.__secretCount # 报错,实例不能访问私有变量
Python 通过改变名称来包含类名:
Traceback (most recent call last): File "test.py", line 17, in <module> print counter.__secretCount # 报错,实例不能访问私有变量 AttributeError: JustCounter instance has no attribute '__secretCount'
Python不允许实例化的类访问私有数据,但你可以使用 object._className__attrName( 对象名._类名__私有属性名 )访问属性,参考以下实例:
#!/usr/bin/python # -*- coding: UTF-8 -*- class Runoob: __site = "www.runoob.com" runoob = Runoob() print runoob._Runoob__site
执行如上的实例之后输出如下:
www.runoob.com
以上就是本篇文章所讲述的所有内容,这篇文章主要介绍了python类属性方法的相关知识,希望你能借助资料从而理解上述所说的内容。希望我在这片文章所讲述的内容能够对你有所帮助,让你学习python更加轻松。
更多相关知识,请访问php中文网Python教程栏目。
Atas ialah kandungan terperinci 什么是python类属性?类的私有属性是什么?(实例解析). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!