School Management Code
School Management Code
class SchoolManagementSystem:
def __init__(self):
self.students = {}
self.teachers = {}
self.classes = {}
@staticmethod
def load_data(filename):
try:
with open(filename, "rb") as file:
return pickle.load(file)
except (FileNotFoundError, EOFError):
return SchoolManagementSystem()
def main():
filename = "school_data.pkl"
school = SchoolManagementSystem.load_data(filename)
while True:
print("\n--- School Management System ---")
print("1. Add Student")
print("2. Add Teacher")
print("3. Add Class")
print("4. View Student")
print("5. View Teacher")
print("6. View Class")
print("7. Record Attendance")
print("8. Calculate Fees")
print("9. Save and Exit")
if choice == 1:
student_id = int(input("Enter student ID: "))
name = input("Enter student name: ")
age = int(input("Enter student age: "))
grade = int(input("Enter student grade: "))
school.add_student(student_id, name, age, grade)
elif choice == 2:
teacher_id = int(input("Enter teacher ID: "))
name = input("Enter teacher name: ")
subject = input("Enter subject: ")
school.add_teacher(teacher_id, name, subject)
elif choice == 3:
class_id = input("Enter class ID: ")
teacher_id = int(input("Enter teacher ID: "))
subject = input("Enter subject: ")
student_ids = list(map(int, input("Enter student IDs (comma separated):
").split(',')))
school.add_class(class_id, teacher_id, subject, student_ids)
elif choice == 4:
student_id = int(input("Enter student ID to view: "))
print(school.get_student(student_id))
elif choice == 5:
teacher_id = int(input("Enter teacher ID to view: "))
print(school.get_teacher(teacher_id))
elif choice == 6:
class_id = input("Enter class ID to view: ")
print(school.get_class(class_id))
elif choice == 7:
class_id = input("Enter class ID: ")
student_id = int(input("Enter student ID: "))
status = input("Enter attendance status (Present/Absent): ")
print(school.record_attendance(class_id, student_id, status))
elif choice == 8:
student_id = int(input("Enter student ID for fee calculation: "))
base_fee = float(input("Enter base fee amount: "))
print(school.calculate_fees(student_id, base_fee))
elif choice == 9:
school.save_data(filename)
print("Data saved. Exiting...")
break
else:
print("Invalid choice. Try again.")
if __name__ == "__main__":
main()