Python学习第十七课——组合
2024-09-06 08:55:48
组合1
#组合 1
class Hand:
pass class Foot:
pass class Trunk:
pass class Head:
pass class Person:
def __init__(self, id_num, name):
self.id_num = id_num
self.name = name
self.hand = Hand()
self.foot = Foot()
self.trunk = Trunk()
self.head = Head() p1=Person('','join') print(p1.__dict__)
组合2
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('家里蹲', '郑州')
s2 = School('市里蹲', '开封') c1 = Course('python', 10, '10天', s1)
c2 = Course('python', 100, '100天', s2)
# print(c1.__dict__)
print(c1.school.name) # 家里蹲
print(c2.school.name) # 市里蹲
print(c1.school.addr) # 郑州
print(c2.school.addr) # 开封
组合例子之点课系统
# 点课系统
class School:
def __init__(self, name, addr):
self.name = name
self.addr = addr class Teacher: # 老师应该与课程进行关联
def __init__(self, name, gongzi,course):
self.name = name
self.gongzi = gongzi
self.course=course class Course:
def __init__(self, name, price, period, school, teacher): # 课程应该和学校 还有 老师进行关联
self.name = name
self.price = price
self.period = period
self.school = school
self.teacher = teacher s1 = School('家里蹲', '郑州')
s2 = School('市里蹲', '开封')
s3 = School('县里蹲', '兰考')
t1 = Teacher('憨憨', 10000, 'python')
t2 = Teacher('玫玫', 1000, '安卓')
t3 = Teacher('浩浩', 100, 'c')
msg = '''
1 家里蹲 郑州校区
2 市里蹲 开封校区
3 县里蹲 兰考校区
'''
msg1 = '''
4 憨憨 python
5 玫玫 安卓
3 浩浩 c
'''
while True:
print(msg)
menu = {
'': s1,
'': s2,
'': s3
}
print(msg1)
teacher_menu = {
'': t1,
'': t2,
'': t3,
}
choice = input('选择学校>>>')
school_obj = menu[choice] # 获取学校信息 name = input('选择课程>>>')
teacher_obj = teacher_menu[name] # 获取老师信息
gongzi = t1.gongzi
price = input('选择费用>>>')
period = input('选择周期>>>')
teacher = input('选择老师>>>') new_course = Course(name, price, period, school_obj, teacher_obj) # print(new_teacher.__dict__)
print('课程【%s】属于【%s】学校 老师为 %s' % (new_course.teacher.course, new_course.school.name, new_course.teacher.name))
#课程【python】属于【家里蹲】学校 老师为 憨憨
最新文章
- Spring mvc 文件上传到文件夹(转载+心得)
- Oracle Essbase入门系列(二)
- 服务器部署之 cap deploy:setup
- 【dubbo】dubbo-admin在jdk 1.8上部署出错问题
- Microsoft SqlServer2008技术内幕:T-Sql语言基础-读书笔记-单表查询SELECT语句元素
- Format类及其子类功能和使用方法具体解释
- UVa 11110 - Equidivisions
- 自适应滤波:维纳滤波器——GSC算法及语音增强
- 【Android Developers Training】 28. 将用户带领到另一个应用
- pdf文件之itextpdf操作实例
- css3 滚动条出现 页面不跳动
- (一)初识mybatis
- 来一轮带注释的demo,彻底搞懂javascript中的replace函数
- PHP安装文件的审计
- Java 非递归实现 二叉树的前中后遍历以及层级遍历
- web测试笔记
- ubuntu下安装php7
- Java中常用类(包装类扩展知识)
- 开发框架DevExtreme全新发布v18.2.6|附下载
- <;Scala>;<;For beginners>;
热门文章
- 那些年做过的ctf之加密篇(加强版)
- Validation failed for one or more entities. See ‘EntityValidationErrors
- python web django 2nd level -- 待更新
- opencv:自定义滤波
- 浅析PHP页面局部刷新功能的实现小结(转)
- eclipse配置tomcat后修改server.xml文件(如编码等)无效问题
- LeetCode练题——35. Search Insert Position
- EasyUI中使用自定义的icon图标
- 【代码学习】PHP面向对象之封装与继承
- PyQt5剪切板操作