0% found this document useful (0 votes)
572 views

Student Management System

This document contains the coding for a student management system project. It includes functions for setting student data, displaying student details, writing records to a file, reading records from a file, searching for a specific record, and deleting a record. The coding uses Python and utilizes dictionaries to store student data and the pickle module to serialize the data when writing it to and loading it from a binary file.

Uploaded by

Lazy-Soul
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
572 views

Student Management System

This document contains the coding for a student management system project. It includes functions for setting student data, displaying student details, writing records to a file, reading records from a file, searching for a specific record, and deleting a record. The coding uses Python and utilizes dictionaries to store student data and the pickle module to serialize the data when writing it to and loading it from a binary file.

Uploaded by

Lazy-Soul
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 30

1

KENDRIYA VIDYALAYA
UTTARKASHI

ACADEMIC YEAR: 2021-22

PROJECT REPORT ON
STUDENT MANAGEMENT SYSTEM

ROLL NO : 01, 09

NAME : 1.VINAYAK MISHRA

2. KRISHNA POKHRIYAL

CLASS : XII A

SUBJECT : COMPUTER SCIENCE

SUB CODE : 083

PROJECT GUIDE: Mrs. RITIKA BISHT

PGT (COMPUTER SCIENCE)


2

TABLE OF CONTENTS [ T O C ]

S.N PAGE
DESCRIPTION
O NO

1 ACKNOWLEDGEMENT 3

2 CERTIFICATE
4

3 INTRODUCTION
5

4 OBJECTIVES OF THE PROJECT


7

5 PROPOSED SYSTEM
8

7 CODING
10

8 SAMPLE OUTPUTS
26
9 HARDWARE AND SOFTWARE REQUIREMENTS
28

10 REFRENCES AND BIBLIOGRAPHY


29

KENDRIYA VIDYALAYA UTTARKASHI


3

ACKNOWLEDGEMENT

I would like to express my sincere gratitude


to my Computer Science teacher Mrs. RITIKA
BISHT THAPA Mam for their vital support
and in the guidance of our honourable
Principal Mrs. MANISHA MAKHIJA Mam.I
would also like to express my gratitude to
my family who gave their valuable time and
contributed in completeing this task and
supported me morally and financially
towards the completition of this project.
4

CERTIFICATE

This is to certify that Vinayak Mishra and


Krishna Pokhriyal of Class XII have prepared
the project on STUDENT MANAGEMENT
SYSTEM. This report is the result of his
efforts and endeavors towards the project.
The report is found worthy of acceptance as
final project report for the subject Computer
Science of Class XII, and has prepared under
my guidance.

Mrs. Ritika Bisht


Subject Teacher
5

INTRODUCTION:

The “Student Management System” has been developed to


override the problems prevailing in the practicing manual
system.This software is supported to eliminate and in some
cases reduce the hardships faced by this existing
system.Moreover this system is designed for the particular
need of the company to carry out operations in a smooth
and effective manner.

The application is reduced as much as possible to avoid


errors while entering the data.It also provides error
message while entering invalid data.No formal knowledge is
needed for the user to use this system.Thus by this all it
proves it is user-friendly.Student Management System, as
described above, can lead to error free, secure, reliable and
fast manangement system.It can assist the user to
concentrate on record keeping.Thus it will help organization
in better utilization of resources.

Every organization, whether big or small, has challenges to


overcome and managing the informations of fees, student
profiles, exams, courses etc.Every Student Management
6

System has different student needs, therefore we design


exclusive employee management systems that are adapted
to your managerial requirements.This is designed to assist
in strategic planning,and will help you ensure that your
organization is equipped with the right level of information
and details for your future goals .Also,for those busy
executive who are always on the go,our systems come with
remote access features,which will allow you to manage
your workforce anytime,at alltimes.These systems will
ultimately allow you to better manage resources.
7

Objectives of the Project

The main objective of the Project on Student Management


System is to manage the details of
student,fees,logins,course.It manages all the information
about student,exams,courses,student.The project is totally
built at administrative end and thus only the administrator
is guaranteed the access. The purpose of the project is to
build an application program to reduce the manual work for
managing the student, fees, exams; logins.It tracks all the
details about the logins, profiles, and courses.

Functionalities provided by Student


Management System are as follows;

 Provides the searching facilities based on various


factors. Such as student, logins, profiles, etc.

 Student Management System also manages the


exam details online for profiles details, courses
details, etc.
8

 It tracks all the information of fees, exams,


profiles, etc.

 Shows the information and description of the


student logins.

 It deals with monitoring the information and


transactions of profiles.

 Editing, adding and updating of records is


improved which results in proper resource
management of student data.

 Integration of all records of Courses.

The Proposed System has the following


requirements;

 System needs store information about new entry


of student.

 System needs to help the internal staff to keep


information of fees and find them as per various
queries.

 System need to maintain quantity record.


9

 System need to keep the record of Logins.

 System need to update and delete the record.

 System also needs a search area.

 It also needs a security system to prevent data.


10

# Coding :
Program (student-management-system.py)

import pickle
import time
import os

def set_data():
rollno = int(input('Enter roll number: '))
name = input('Enter name: ')
english = int(input('Enter Marks in English: '))
maths = int(input('Enter Marks in Maths: '))
physics = int(input('Enter Marks in Physics: '))
chemistry = int(input('Enter Marks in Chemistry: '))
cs = int(input('Enter Marks in CS: '))
print()

#create a dictionary
11

student = {}
student['rollno'] = rollno
student['name'] = name
student['english'] = English
student['maths'] = maths
student['physics'] = physics
student['chemistry'] = chemistry
student['cs'] = cs
return student

def display_data(student):
print('\nSTUDENT DETAILS..')
print('Roll Number:', student['rollno'])
print('Name:', student['name'])
print('English:', student['english'])
print('Maths:', student['maths'])
print('Physics:', student['physics'])
print('Chemistry:', student['chemistry'])
print('CS:', student['cs'])
12

def display_data_tabular(student):
print(student['rollno'], student['name'],
student['english'], student['maths'], student['physics'],
student['chemistry'], student['cs'],sep='\t')

def class_result():
#open file in binary mode for reading
try:
infile = open('student.dat', 'rb')
except FileNotFoundError:
print('No record found..')
print('Go to admin menu to create record')
return

print('\nRollno', ' Name', '\tEnglish',


'Maths','Physics','Chemistry','CS')
#read to the end of file.
while True:
try:
13

#reading the oject from file


student = pickle.load(infile)

#display the record


display_data_tabular(student)
except EOFError:
break

#close the file


infile.close()

def write_record():
#open file in binary mode for writing.
outfile = open('student.dat', 'ab')

while(True):
#serialize the record and writing to file
pickle.dump(set_data(), outfile)
ans = input('Wants to enter more record (y/n)?: ')
if ans in 'nN':
14

break

#close the file


outfile.close()

def read_records():
#open file in binary mode for reading
try:
infile = open('student.dat', 'rb')
except FileNotFoundError:
print('No record found..')
return

#read to the end of file.


while True:
try:
#reading the oject from file
student = pickle.load(infile)
#display the record
15

display_data(student)
except EOFError:
break

#close the file


infile.close()

def search_record():
#open file in binary mode for reading
try:
infile = open('student.dat', 'rb')
except FileNotFoundError:
print('No record..')
return

found = False
rollno = int(input('Enter the rollno you want to search: '))
#read to the end of file.
while True:
try:
16

#reading the oject from file


student = pickle.load(infile)
if student['rollno'] == rollno:
#display the record
display_data(student)
found = True
break
except EOFError:
break
if found==False:
print('Record not found!!')

#close the file


infile.close()

def delete_record():
print('\nDELETE RECORD')

try:
infile = open('student.dat', 'rb')
17

except FileNotFoundError:
print('No record found to delete..')
return

outfile = open("temp.dat","wb")
found = False

rollno = int(input('Enter roll number: '))


while True:
try:
#reading the oject from file
student = pickle.load(infile)

#display record if found and set flag


if student['rollno'] == rollno:
display_data(student)
found = True
break
else:
pickle.dump(student,outfile)
18

except EOFError:
break

if found == False:
print('Record not Found')
print()
else:
print("record found and deleted")
infile.close()
outfile.close()
os.remove("student.dat")
os.rename("temp.dat","student.dat")

def modify_record():
print('\nMODIFY RECORD')
try:
infile = open('student.dat', 'rb')
except FileNotFoundError:
print('No record found to modify..')
return
19

found = False
outfile = open("temp.dat","wb")
rollno = int(input('Enter roll number: '))
while True:
try:
#reading the oject from file
student = pickle.load(infile)

#display record if found and set flag


if student['rollno'] == rollno:

print('Name:',student['name'])
ans=input('Wants to edit(y/n)? ')
if ans in 'yY':
student['name'] = input("Enter the
name ")
print('English marks:',student['english'])
ans=input('Wants to edit(y/n)? ')
if ans in 'yY':
20

student['english'] = int(input("Enter
new marks: "))

print('Maths marks:',student['maths'])
ans=input('Wants to edit(y/n)? ')
if ans in 'yY':
student['maths'] = int(input("Enter
new marks: "))

print('Physics
marks:',student['physics'])
ans=input('Wants to edit(y/n)? ')
if ans in 'yY':
student['physics'] =
int(input("Enter new marks: "))

print('Chemistry
marks:',student['chemistry'])
ans=input('Wants to edit(y/n)? ')
if ans in 'yY':
21

student['chemistry'] =
int(input("Enter new marks: "))
print('CS marks:',student['cs'])
ans=input('Wants to edit(y/n)? ')
if ans in 'yY':
student['cs'] = int(input("Enter
new marks: "))

pickle.dump(student,outfile)
found = True
break
else
pickle.dump(student,outfile)
except EOFError:
break
if found == False:
print('Record not Found')
else:
print('Record updated')
display_data(student)
22

infile.close()
outfile.close()
os.remove("student.dat")
os.rename("temp.dat","student.dat")

def intro():
print("=x=x=x=x=x=x=x=x=x=x=x=x=x=")
print("STUDENT")
print("REPORT CARD")
print("PROJECT")
print("MADE BY : YOUR NAME")
print("SCHOOL : SCHOOL NAME")
print("=x=x=x=x=x=x=x=x=x=x=x=x=x=")
print()
time.sleep(1)

def main_menu():
print("MAIN MENU")
print("1. REPORT MENU")
print("2. ADMIN MENU")
23

print("3. EXIT")

def report_menu():
print("REPORT MENU")
print("1. CLASS RESULT")
print("2. STUDENT REPORT CARD")
print("3. BACK TO MAIN MENU")

def admin_menu():
print("ADMIN MENU")
print("1. CREATE STUDENT RECORD")
print("2. DISPLAY ALL STUDENTS RECORDS")
print("3. SEARCH STUDENT RECORD ")
print("4. MODIFY STUDENT RECORD ")
print("5. DELETE STUDENT RECORD ")
print("6. BACK TO MAIN MENU")

def main():
intro()
while(True):
24

main_menu()
choice = input('Enter choice(1-3): ')
print()

if choice == '1':
report_menu()
rchoice = input('Enter choice(1-4): ')
if rchoice == '1':
class_result()
elif rchoice == '2':
search_record()
elif rchoice == '3':
pass
else:
print('Invalid input !!!')
print()

elif choice == '2':


admin_menu()
echoice = input('Enter choice(1-6): ')
25

if echoice == '1':
write_record()
elif echoice == '2':
read_records()
elif echoice == '3':
search_record()
elif echoice == '4':
modify_record()
elif echoice == '5':
delete_record()
elif echoice == '6':
pass
else:
print('Invalid input !!!')
print()
elif choice == '3':
break
else:
print('Invalid input!!!')
print()
26

#call the main function.


main()

#Sample Output:

=x=x=x=x=x=x=x=x=x=x=x=x=x=
STUDENT
REPORT CARD
PROJECT
MADE BY: YOUR NAME
SCHOOL: SCHOOL NAME
=x=x=x=x=x=x=x=x=x=x=x=x=x=

MAIN MENU
1. REPORT MENU
2. ADMIN MENU
3. EXIT
Enter choice (1-3): 1

REPORT MENU
1. CLASS RESULT
2. STUDENT REPORT CARD
3. BACK TO MAIN MENU
27

Enter choice (1-4): 3

MAIN MENU
1. REPORT MENU
2. ADMIN MENU
3. EXIT
Enter choice (1-3): 2

ADMIN MENU
1. CREATE STUDENT RECORD
2. DISPLAY ALL STUDENTS RECORDS
3. SEARCH STUDENT RECORD
4. MODIFY STUDENT RECORD
5. DELETE STUDENT RECORD
6. BACK TO MAIN MENU
Enter choice (1-6):
28

REQUIREMENTS:-
# Hardware required:
 Printer: to print the required documents of the
project.
 Compact Drive.
 Processor: Pentium III or above.
 Ram: 64 or above.
 Hardisk: 20 GB or above.

#Software used:
 Operating system: windows 7 ultimate.

 Python, for execution of program and file


editor, for presentation of output.
29

References and
Bibliography:

1) Computer Science with python


Sumita Arora.
2) PY.charm.in
3) Webschool.com
4) Wikipedia.com
30

You might also like