定义一个类
格式:
class 类名:(默认继承object)
passs
创建对象:
对象 = 类名(参数。。。)
class Test2: //定义一个最简单的类
print('--------test2')
t2 = Test2() //创建一个对象
###创建一个带方法的类
class Test: //定义一个类叫Test
def __init__(self, name, age): //创建一个__init__方法
self.name = name //为属性赋值(类中的变量叫属性)
self.age = age //为属性赋值
print('姓名是:{},年龄是:{}'.format(self.name,self.age))
def tang(self): //创建一个方法叫tang(类中的函数叫方法)
return '------tang' //方法(函数)的返回值
t = Test('tang', 24) //创建一个对象,t并传参
print(t.tang()) //调用类中的方法
print(t.name) //调用类中的属性
修改类中的属性
class Test: #定义一个简单的类Test
name = 'tang' #并为类中的属性赋值
age = '24' #为类中的属性赋值
t1 = Test() #创建对象
t2 = Test() #创建对象
t3 = Test() #创建对象
print(id(t1),'\t', id(t2), '\t', id(t3) ) #打印三个对象的地址,你会发现她们的地址都市不一样的
print(t1.name) #调用对象中的name属性
print(t2.name) #调用对象中的name属性
print(t3.name) #调用对象中的name属性
t1.name = 'jian' #修改t1对象中的name属性
t2.name = 'feng' #修改t2对象中的name属性
print(t1.name) #这是时候你会发现现在的name属性的值为修改后的'jian'
print(t2.name) #t2的name属性也修改了
print(t3.name) #t3的值依然是之前类中定义的值
``
总结:当我们定义一个对象时,对象会创建一个空间,当我们调用对象的属性时,对象会在自身寻找是否有这个属性
当自身没有这个属性时,就会到类中去寻找,调用类的属性的值,当我们修改t1的name属性的值时,他就先会在自身寻找
自身没有就会创建一个,当我们再次查询时他的值就是修改后的值了
`