# _*_ coding:utf-8 _*_
class student(object):
def __init__(self,name,grade,score):
self.name=name
self.grade=grade
print("=====111111111======")
self.score=score
def __str__(self):
print("======22222222======")
return '(student: %s, %s, %s)' %(self.name,self.grade,self.score)
class collegestudent(student):
def abc(self):
return ("你好", self.name,self.grade,self.score)
此时什么都没做,student只是一个地址的引用
self代表的是student的inti的3个变量
-----------------------------------------------------------------------------------------
#a=collegestudent('daxing','3','59')
#print (a)
#print("======abc======",a.abc())
========================================================
class collegestudent(student):
def abc(self):
return ("你好", self.name,self.grade,self.score)
a=collegestudent('daxing','3','59')
此时会打印:=====111111111======
但不会打印:=====22222222====== ,因没有调用print(a),__str__还没起作用。
========================================================
class collegestudent(student):
def abc(self):
return ("你好", self.name,self.grade,self.score)
a=collegestudent('daxing','3','59')
print(a)
此时会打印:=====111111111======
=====22222222======
student:'daxing','3','59'
因为已调用print(a),__str__才起作用。
========================================================
class collegestudent(student):
def abc(self):
return ("你好", self.name,self.grade,self.score)
a=collegestudent('daxing','3','59')
print(a)
print (a.abc())
此时会打印:=====111111111======
=====22222222======
student:'daxing','3','59'
你好,'daxing','3','59'
========================================================
class collegestudent(student):
def abc(self):
return ("你好", self.name,self.grade,self.score)
a=collegestudent('daxing','3','59')
print (a.abc())
此时会打印:=====111111111======
你好,'daxing','3','59'