如果学过JAVA面向对象再去理解Python类就会很简单
类的特点,类允许代码的抽象行为和状态打包在一起,类有方法和属性,类共享行为但是不共享状态class CountFromBy: #类使用class 类名 def __init__(self,v:int=0,i:int=1): #类的默认方法,self是内部处理,这个我也不好解释跟java的一样 ,后面传入两个参数用v和i保存
class CountFromBy: #类使用class 类名 def __init__(self,v:int=0,i:int=1): #类的默认方法,self是内部处理,这个我也不好解释跟java的一样 ,后面传入两个参数用v和i保存 self.val = v #保存至类的内部val中 self.incr = i def increase(self) -> None: #这个类中的第二个方法 执行函数计算,每一次调用就执行val=val+incr,并保存专属状态 self.val += self.incr def __repr__(self) -> str: #第三个方法将内部计算好的结果打包成str类型进行返回 return str(self.val) a=CountFromBy()#向工厂(类)创建一个名字叫a的包 a.increase()#执行默认参数运算 CountFromBy.increase(a)#这是上一句的原型应为执行两次increase方法所以结果为2 a.__repr__()#将结果打包成str模式 print(a,'a')#打印数据 b=CountFromBy(100,10) #向工厂创建一个名字叫b的包,传入两个参数与v和i的位置相对应 b.increase() b.__repr__() print(b,'b') #通过结果可以看出工厂(类)对两个包(a,b)进行不同的运算,结果互不干扰,应为是类在内部计算完成后放置在a指定地址与b指定地址上
运行结果