Python面向对象 组合(选课系统示例)
# Author : Kelvin
# Date : 2019/1/15 20:44 """
学校与老师关联
课程与老师和学校关联
""" class School():
def __init__(self, name, profession):
self.name = name
self.profession=profession class Teacher():
def __init__(self, name, age, gender, school):
self.name = name
self.age = age
self.gender = gender
self.school=school class Course():
def __init__(self, name, time, school, teacher):
self.name = name
self.time = time
self.school = school
self.teacher = teacher s1 = School("大庆师范学院", "计算机专业")
s2 = School("大庆师范学院", "生物工程专业")
s3 = School("大庆师范学院", "外国语专业") t1 = Teacher("kelvin", 22, "male", s1)
t2 = Teacher("alex", 23, "male", s3)
t3 = Teacher("jam", 25, "female", s2) msg1="""
学校选项:
1:"大庆师范学院", "计算机专业"
2:"大庆师范学院", "生物工程专业"
3:"大庆师范学院", "外国语专业"
"""
msg2="""
教师选项:
1:"kelvin", 22, "male", "大庆师范学院", "计算机专业"
2:"alex", 23, "male", "大庆师范学院", "外国语专业"
3:"jam", 25, "female","大庆师范学院", "生物工程专业"
"""
while True:
print(msg1)
choice1 = input("请选择学校专业:")
s = {
"": s1,
"": s2,
"": s3
}
if choice1 in s:
sx = s[choice1]
else:
print("专业选择异常,请重试!")
break print(msg2)
choice2 = input("请选择老师:")
t = {
"": t1,
"": t2,
"": t3
}
if choice2 in t:
tx = t[choice2]
else:
print("教师选择异常,请重试!")
break
course_name = input("请输入课程名:")
course_time = input("请输入课程时长:")
new_course = Course(course_name, course_time, sx, tx)
print("选课成功! [%s]课程所属的学校是[%s]专业是[%s] 老师名字[%s]年龄[%s]性别[%s]所属学校[%s]专业[%s] 课程时长:[%s]" % (
new_course.name, new_course.school.name, new_course.school.profession, new_course.teacher.name,
new_course.teacher.age, new_course.teacher.gender, new_course.teacher.school.name,new_course.teacher.school.profession,new_course.time))
break
Python面向对象 组合(选课系统示例)的更多相关文章
- python实现学生选课系统 面向对象的应用:
一.要求: 选课系统 管理员: 创建老师:姓名.性别.年龄.资产 创建课程:课程名称.上课时间.课时费.关联老师 使用pickle保存在文件 学生: 学生:用户名.密码.性别.年龄.选课列表[].上课 ...
- [ python ] 作业:选课系统
功能代码实现源地址:https://www.cnblogs.com/lianzhilei/p/5832691.html 如有侵权,立即删除 本文主要是分析 选课系统 实现思路及上面代码的实现过程 ...
- Python 面向对象 组合-多态与多态性-封装-property
面向对象-组合 1.什么是组合 组合指的是某一个对象拥有一个属性,该属性的值是另外一个类的对象 class Foo: xxx = 111 class Bar: yyy = 222 obj = Foo( ...
- python day 12: 选课系统
目录 python day 12 1. 通过类来创建选课系统 1.1 类库models.py 2. 配置文件setting.py 3. administrator.py 4. student.py p ...
- Python 简易版选课系统
一.创建学生类 # # 创建学生类 import random class Student: def __init__(self,num,name,address,course_lst=None): ...
- python+requests模拟登陆 学校选课系统
最近学校让我们选课,每天都有不同的课需要选....然后突发奇想试试用python爬学校选课系统的课程信息 先把自己的浏览器缓存清空,然后在登陆界面按f12 如图: 可以看到登陆时候是需要验证码的,验证 ...
- 【原创】面向对象作业:选课系统中用pickle储存多个对象间组合引用关系的那些坑
转载请注明出处:https://www.cnblogs.com/oceanicstar/p/9030121.html 想直接看结论先提前列出: 1.存储一个对象,文件不是真的给你存储的了对象这种东西, ...
- Python开发基础-Day19继承组合应用、对象序列化和反序列化,选课系统综合示例
继承+组合应用示例 class Date: #定义时间类,包含姓名.年.月.日,用于返回生日 def __init__(self,name,year,mon,day): self.name = nam ...
- python 面向对象 class 老男孩选课系统
要求:1. 创建北京.上海 2 所学校 class2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开3. 课程包含,周期,价格,通过学校创建课 ...
随机推荐
- segmenter.go
; ;; ].minDistance ; ].text),, ;; ;; ;,) { output = append(output, toLower(text[alphanum ...
- main.go
package main import ( "flag" "fmt" "log" "os" ...
- bzoj 2005 能量采集 莫比乌斯反演
我们要求的是∑ni=1∑mj=1(2×gcd(i,j)−1) 化简得2×∑ni=1∑mj=1gcd(i,j)−n×m 所以我们现在只需要求出∑ni=1∑mj=1gcd(i,j)即可 ∑ni=1∑mj= ...
- BZOJ_[JSOI2010]Group 部落划分 Group_kruskal
BZOJ_[JSOI2010]Group 部落划分 Group_kruskal Description 聪聪研究发现,荒岛野人总是过着群居的生活,但是,并不是整个荒岛上的所有野人都属于同一个部落,野人 ...
- Python 视频转字符画 - 进阶
这篇文章是 视频转字符动画-Python-60行代码 的后续,如果感兴趣,请先看看它. 1. 速度优化 要是每次播放都要等个一分钟,也太痛苦了一点. 所以可以用 pickle 模块把 video_ch ...
- CTF中常见的加解密(经典)
今天一早起来,就要去做早操,心里苦呀! 但是不影响我为未来的学弟学妹整理资料的心情呀!希望我的一些拙见能够帮助到学弟学妹! 永远爱你们的 ---- 新宝宝 ASCII编码 ASCII 码使用指定的7 ...
- 一个C#程序员学习微信小程序路由的笔记
路由大家应该都知道,在微信小程序也是有的,毕竟它是单页面应用程序.在WeChat中有五种跳转方式,分别是wx.switchTab.wx.reLaunch.wx.redirectTo.wx.naviga ...
- Supervisor守护DotNet Core控制台程序
Supervisor 相信对Linux系统很熟的都知道这个软件,基于Python写的一个守护进程软件.具体的介绍和使用我就不再赘述了. 使用asp.net core 部署在Linux常用的方法 我们可 ...
- 腾讯云centos服务器不能登录的解决过程
在腾讯云上申请了一个centos服务器,最基础的配置,1 核 1 GB 1 Mbps,50G硬盘,主要用来测试程序,练手用.在上面配置了一个mysql数据库,一直使用都没什么问题. 1 问题描述 过了 ...
- 《前端之路》之 JavaScript 进阶技巧之高阶函数(下)
目录 第二章 - 03: 前端 进阶技巧之高阶函数 一.防篡改对象 1-1:Configurable 和 Writable 1-2:Enumerable 1-3:get .set 2-1:不可扩展对象 ...