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)  # 报错,实例不能访问私有变量

# -*- coding: utf-8 -*-
class Site:
    def __init__(self,name,url):
        self.name = name #pubilc
        self.__url = url  #private

    def who(self):
        print('name:' ,self.name)
        print('url:' , self.__url)

    def __foo(self): #私有方法
        print('这是私有方法')

    def foo(self): #公共方法
        print('这是公共方法')
        self.__foo()

x = Site('春天的菠菜','www.baidu.com')
x.who() # 正常输出
x.foo() # 正常输出
x.__foo()  # 报错

# -*- coding: utf-8 -*-
class Vector:
    def __init__(self,a,b):
        self.a = a
        self.b = b

    def __str__(self):
        return 'Vector (%d , %d )'% (self.a,self.b)

    def __add__(self, other):
        return Vector(self.a + other.a,self.b + other.b)

v1 = Vector(2,10)
v2 = Vector(5,-2)
print(v1 + v2)

猜你喜欢

转载自blog.csdn.net/legend818/article/details/90022362