网站建设对企业品牌价值提升的影响,邹城网站设计,注册公司代理网,wordpress更新文章创建一个简单的医院挂号系统通常涉及患者注册、挂号功能#xff0c;以及医生的安排。这里我们将使用 Python 来实现一个基本的命令行挂号系统。我们将构建以下功能#xff1a;
患者注册#xff1a;输入患者基本信息#xff0c;注册后保存患者信息。挂号服务#xff1a;根…创建一个简单的医院挂号系统通常涉及患者注册、挂号功能以及医生的安排。这里我们将使用 Python 来实现一个基本的命令行挂号系统。我们将构建以下功能
患者注册输入患者基本信息注册后保存患者信息。挂号服务根据患者选择的科室和医生进行挂号。查询挂号查看当前所有的挂号信息。
我们将使用字典来存储患者和医生的数据以简化数据库操作。
Python 代码实现
以下是医院挂号系统的一个简单实现
from typing import Dict, List, Tupleclass HospitalRegistrationSystem:def __init__(self):# 初始化用于存储病人信息和预约信息的字典以及按科室分类的医生列表self.patients: Dict[int, Dict[str, str]] {}self.appointments: List[Tuple[int, str]] []self.doctors: Dict[str, List[str]] {Cardiology: [Dr. Smith, Dr. Wesson],Orthopedics: [Dr. Clark, Dr. Stone],Pediatrics: [Dr. Adams, Dr. Black]}def register_patient(self) - None:# 注册病人name input(请输入病人姓名: ).strip()age input(请输入病人年龄: ).strip()if not name or not age.isdigit():print(输入无效。姓名不能为空且年龄必须为数字。)returnpatient_id len(self.patients) 1self.patients[patient_id] {name: name, age: age}print(f病人注册成功病人ID: {patient_id})def book_appointment(self) - None:# 预约挂号try:patient_id int(input(请输入您的病人ID: ))if patient_id not in self.patients:print(病人ID无效。)returnprint(可选择的科室有)for specialty in self.doctors:print(specialty)specialty input(请选择科室: ).strip()if specialty not in self.doctors:print(科室选择无效。)returnprint(可选择的医生有)for idx, doctor in enumerate(self.doctors[specialty]):print(f{idx 1}. {doctor})doc_choice int(input(请选择医生输入数字: ))if 1 doc_choice len(self.doctors[specialty]):doctor self.doctors[specialty][doc_choice-1]self.appointments.append((patient_id, doctor))print(f已成功预约{doctor}医生病人ID {patient_id}。)else:print(医生选择无效。)except ValueError:print(输入错误请输入有效的数字。)def view_appointments(self) - None:# 查看预约信息if not self.appointments:print(当前没有预约。)for appointment in self.appointments:patient_id, doctor appointmentpatient_name self.patients[patient_id][name]print(f病人 {patient_name} (ID: {patient_id}) 预约了 {doctor} 医生。)# 主程序交互循环
if __name__ __main__:system HospitalRegistrationSystem()while True:print(\n1. 注册病人)print(2. 预约挂号)print(3. 查看预约)print(4. 退出系统)choice input(请输入选项: )if choice 1:system.register_patient()elif choice 2:system.book_appointment()elif choice 3:system.view_appointments()elif choice 4:print(退出系统。)breakelse:print(无效选择请重新输入。)功能说明
患者注册患者可以通过提供姓名和年龄来注册。每位患者被赋予一个唯一的 ID。挂号服务患者可以选择专科和专科内的医生进行挂号。系统将确认挂号详情。查询挂号可以查看所有挂号信息包括患者名称和他们的医生。
运行流程
用户将通过命令行界面与系统交互选择注册、挂号或查看挂号信息。这个系统简单而实用适合作为学习项目进一步开发。
这个系统当前是非常基础的版本实际应用中需要处理更多细节如挂号时间、取消挂号、医生的排班表等。此外为了保证数据持久性应当将数据存储于数据库而非内存字典。