学生宿舍管理系统python实现
时间: 2023-06-29 17:18:01 浏览: 60
下面是一个简单的学生宿舍管理系统的 Python 实现,实现了学生信息的录入、查询、修改和删除,以及宿舍信息的管理(包括宿舍信息的录入、查询、修改和删除)。
```python
class Student:
def __init__(self, name, age, gender, dorm_num):
self.name = name
self.age = age
self.gender = gender
self.dorm_num = dorm_num
class Dorm:
def __init__(self, dorm_num, capacity, students):
self.dorm_num = dorm_num
self.capacity = capacity
self.students = students
class DormManager:
def __init__(self):
self.dorms = []
# 添加宿舍
def add_dorm(self, dorm):
self.dorms.append(dorm)
# 查询宿舍
def search_dorm(self, dorm_num):
for dorm in self.dorms:
if dorm.dorm_num == dorm_num:
return dorm
return None
# 修改宿舍信息
def modify_dorm(self, dorm_num, capacity):
dorm = self.search_dorm(dorm_num)
if dorm is not None:
dorm.capacity = capacity
return True
return False
# 删除宿舍
def delete_dorm(self, dorm_num):
dorm = self.search_dorm(dorm_num)
if dorm is not None:
self.dorms.remove(dorm)
return True
return False
class StudentManager:
def __init__(self):
self.students = []
# 添加学生
def add_student(self, student):
self.students.append(student)
# 查询学生
def search_student(self, name):
for student in self.students:
if student.name == name:
return student
return None
# 修改学生信息
def modify_student(self, name, age, gender, dorm_num):
student = self.search_student(name)
if student is not None:
student.age = age
student.gender = gender
student.dorm_num = dorm_num
return True
return False
# 删除学生
def delete_student(self, name):
student = self.search_student(name)
if student is not None:
self.students.remove(student)
return True
return False
# 测试代码
dorm1 = Dorm('Dorm 1', 4, [])
dorm2 = Dorm('Dorm 2', 2, [])
dorm_manager = DormManager()
dorm_manager.add_dorm(dorm1)
dorm_manager.add_dorm(dorm2)
student1 = Student('Tom', 18, 'male', 'Dorm 1')
student2 = Student('Jerry', 19, 'male', 'Dorm 2')
student_manager = StudentManager()
student_manager.add_student(student1)
student_manager.add_student(student2)
# 查询宿舍信息
dorm = dorm_manager.search_dorm('Dorm 1')
print(dorm.capacity)
# 修改宿舍信息
dorm_manager.modify_dorm('Dorm 1', 6)
dorm = dorm_manager.search_dorm('Dorm 1')
print(dorm.capacity)
# 删除宿舍信息
dorm_manager.delete_dorm('Dorm 2')
print(len(dorm_manager.dorms))
# 查询学生信息
student = student_manager.search_student('Tom')
print(student.dorm_num)
# 修改学生信息
student_manager.modify_student('Tom', 19, 'male', 'Dorm 2')
student = student_manager.search_student('Tom')
print(student.dorm_num)
# 删除学生信息
student_manager.delete_student('Jerry')
print(len(student_manager.students))
```
这只是一个简单的实现,实际应用中可能需要更完善的功能和更严谨的代码。