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. 课程包含,周期,价格,通过学校创建课 ...
随机推荐
- Javascript 进阶 面向对象编程 继承的一个例子
Javascript的难点就是面向对象编程,上一篇介绍了Javascript的两种继承方式:Javascript 进阶 继承,这篇使用一个例子来展示js如何面向对象编程,以及如何基于类实现继承. 1. ...
- python - hash类型操作
Redis在内存中存储hash类型是以name对应一个字典形式存储的 常用操作 在name对应的hash中获取根据key获取valuehget(name,key) 在name 对应的hash 中设备键 ...
- BITE
<Google软件测试之道> 读后感言: p147 提到的BITE实在是太让人心动了, 一个简单的动作即可提交一个信息齐全的bug,连非专业测试人员也能轻松做到.身边很多人也都碰到过提交b ...
- 关于find命令的一些知识
在服务器运维的过程中,我们会用到这样一个命令,关于这个命令,你知道多少呢?接下来,咱们一起来研究一下它的用途. find命令主要用来在硬盘上搜索文件, find命令主要用于文件查找,列出当前目录及子目 ...
- dqname_widnows.go
package nsqd // On Windows, file names cannot contain colons. func getBackendName(topicName, channel ...
- dnscache --源码笔记
) } } //通过net包 解析域名对应的ip集合 func (r *Resolver) Lookup(address string) ([]net.IP, error) { ips, err := ...
- Ceilometer + Aodh + Gnocchi 介绍
一. Ceilometer 1. 概述 Openstack ceilometer主要用于监控虚拟机.服务(glance.image.network等)和事件.虚拟机的监控项主要包括CPU.磁盘 ...
- django 的时区设置
在Django的配置文件settings.py中,有两个配置参数是跟时间与时区有关的,分别是TIME_ZONE和USE_TZ 如果USE_TZ设置为True时,Django会使用系统默认设置的时区,即 ...
- 《HelloGitHub》第 26 期
公告 五月初 hellogithub.com 网站做了优化和试错.因为我个人能力原因,导致这段时间网站出现了间断性不能访问,现在问题已经修复.多谢大家的支持.理解和反馈. 本期新增了"星图& ...
- 离线安装mysql数据库
开源数据库mysql,目前使用很广泛.作为程序员开发项目时,与关系型数据库打交道最多的估计也是mysql了.那么本文首先讲解如何离线安装mysql数据库,毕竟有很多项目部署在内网. 1.离线安装 本人 ...