1.在外面实例化被组合类
#选课系统(在外面实例化被组合类)
class School:
def __init__(self,name,addr):
self.name = name
self.addr = addr
class Course:
def __init__(self,name,price,period,school):
self.name = name
self.price = price
self.period = period
self.school = school
s1 = School('oldboy','北京')
s2 = School('oldboy','南京')
s3 = School('oldboy','东京')
c1 = Course('linux',10,'1h',s1)
meg = '''
1 : 北京
2 : 南京
3 : 东京
'''
while True:
print(meg)
menu = {
'1':s1,
'2':s2,
'3':s3
}
choice = input('选择学校>>:')
school_obj = menu[choice]
choice2 = input('课程>>:')
new_course = Course('linux','10','1h',school_obj)
print(new_course.school.name)
2.在类里面实例化被组合的类
class School:
def __init__(self,name,addr):
self.name = name
self.addr = addr
class Course:
def __init__(self,name,price,period,school_name,addr):
self.name = name
self.price = price
self.period = period
self.school = School(school_name,addr)
c1 = Course('linux',10,'1h','oldboy','北京')
print(c1.school.name)