网站建设资讯

NEWS

网站建设资讯

关于python中私有函数的信息

python 类中的私有属性有哪些

类的私有属性:

从事四川雅安服务器托管,服务器租用,云主机,雅安服务器托管域名申请,CDN,网络代维等服务。

__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不允许实例化的类访问私有数据,但你可以使用 object._className__attrName 访问属性,将如下代码替换以上代码的最后一行代码:

…………………….

print counter._JustCounter__secretCount

这样就可以访问私有属性了

python中如何调用私有函数

class MyClass: def __init__(self): print "initialize..." def __play(self): print "play..." a = MyClass()initialize... a._MyClass__play()play... dir(a)['_MyClass__play', '__doc__', '__init__', '__module__']python的私有是伪的,还是可以访问到。 方法就是_类名__方法名,python不过是在以__开头的方法名面前加了小动作导致访问不到看起来像私有方法。

Python中的面向对象(高级)之私有方法、多继承、多态

特征:私有属性与私有方法不能从外部被调用,也不能被子类继承

唯一写法:在属性或方法前面加上__(两个下划线)

我们写一个简单的例子,创建一个类,包含私有方法、私有属性、普通方法、普通属性,并生成一个实例

私有属性和私有方法可以从内部被调用(总不能我写了,但是哪都不让用吧)

我们试试在类里再加入一个新的方法,调用私有方法和属性

可以看到,私有属性和私有方法是可以在类内部被调用的。

举个私有属性应用场景的例子

二。object类

我们试一下

三。多继承

一个子类可以继承多个父类,用逗号隔开

多个父类中有同名方法时,按照继承顺序进行调用

四。多态

当不同的实例,有同名的方法时,我们可以一个函数,传入不同的实例,执行对应的方法。

我们定义一个猫和一个狗的类,两个类中都有'叫'的方法。并各生成一个实例。

定义一个函数,用函数来调用'叫'的方法

这就叫多态。


分享文章:关于python中私有函数的信息
分享链接:http://cdweb.net/article/hdscsi.html