阅读背景:

python的全局变量(属性的用法),私有属性,计算对象引用数

来源:互联网 

python的属性可以实现C#的全局变量的功能

 
 
#encoding=utf-8class Student:def __init__(self,name,age):self.name=name;self.age=age;self.hobby=[] #这里属性用一个列表表示,用来添加爱好print('creat a student')def __str__(self):#跟init方法一样,自动调用return ('%s的年龄是%d,爱好是%s'%(self.name,self.age,str(self.hobby)))#这里加个str一定打印的是字符串def sayHello():print('hello world')def addAge(self,addedAge):print("%s age is %d"%(self.name,self.age))def addAgeAgain(self,addedAge):self.age+=addedAge;print("%s age is %d"%(self.name,self.age))def addHabby(self,habby):self.hobby.append(habby)#这样是按照上面addAge()进行计算的,得出的age没有发生变化,是不对的#tom age is 9#tom age is 9tom=Student('tom',9) #creat a studenttom.addAge(1)#长大了1岁tom.addAge(2)#长大了两岁print(tom) #当没有__str__时,异常,定义了__str__ 返回:tom的年龄是9 #1 创建一个对象2 python自动的调用__init__方法,把对象自动引用 3 放回创建对象的引用给tomtim=Student('tim',9)tim.addAgeAgain(1)tim.addAgeAgain(2)tim.addHabby("run")tim.addHabby('football')print(tim) #tim的年龄是12,爱好是['run', 'football']#显示 tim age is 10#tim age is 12#tim的年龄是12#encoding=utf-8



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: