Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
197 views

Student Management System Project Inpython

The document describes a student management system that allows users to perform CRUD (create, read, update, delete) operations on student records stored in a CSV file. The system includes functions to add, view, search, update and delete students by prompting users to enter a student's roll number and field values. It uses a main loop to display the menu and call the appropriate function based on the user's choice.

Uploaded by

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

Student Management System Project Inpython

The document describes a student management system that allows users to perform CRUD (create, read, update, delete) operations on student records stored in a CSV file. The system includes functions to add, view, search, update and delete students by prompting users to enter a student's roll number and field values. It uses a main loop to display the menu and call the appropriate function based on the user's choice.

Uploaded by

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

# Student Management System

"""
Fields :- ['roll', 'name', 'age', 'email','adress', 'phone']
1. Add New Student
2. View Students
3. Search Student
4. Update Student
5. Delete Student
6. Quit
"""

import csv
# Define global variables
student_fields = ['roll', 'name', 'age', 'email', 'adress','phone']
student_database = 'students.csv'

def display_menu():
print("--------------------------------------")
print(" Welcome to Student Management System")
print("---------------------------------------")
print("1. Add New Student")
print("2. View Students")
print("3. Search Student")
print("4. Update Student")
print("5. Delete Student")
print("6. Quit")

def add_student():
print("-------------------------")
print("Add Student Information")
print("-------------------------")
global student_fields
global student_database

student_data = []
for field in student_fields:
value = input("Enter " + field + ": ")
student_data.append(value)

with open(student_database, "a", encoding="utf-8") as f:


writer = csv.writer(f)
writer.writerows([student_data])

print("Data saved successfully")


input("Press any key to continue")
return

def view_students():
global student_fields
global student_database

print("--- Student Records ---")

with open(student_database, "r", encoding="utf-8") as f:


reader = csv.reader(f)
print("Rollno \t|Name\t\t|Age\t|Email\t\t\t|Adress\t\t\t\t|Phone\t\t|")
print("\n--------------------------------------------------------------------------
--------------------------------")

for row in reader:


for item in row:
print(item, end="\t |")
print("\n")

input("Press any key to continue")

def search_student():
global student_fields
global student_database

print("--- Search Student ---")


roll = input("Enter roll no. to search: ")
with open(student_database, "r", encoding="utf-8") as f:
reader = csv.reader(f)
for row in reader:
if len(row) > 0:
if roll == row[0]:
print("----- Student Found -----")
print("Roll: ", row[0])
print("Name: ", row[1])
print("Age: ", row[2])
print("Email: ", row[3])
print("Phone: ", row[4])
break
else:
print("Roll No. not found in our database")
input("Press any key to continue")

def update_student():
global student_fields
global student_database

print("--- Update Student ---")


roll = input("Enter roll no. to update: ")
index_student = None
updated_data = []
with open(student_database, "r", encoding="utf-8") as f:
reader = csv.reader(f)
counter = 0
for row in reader:
if len(row) > 0:
if roll == row[0]:
index_student = counter
print("Student Found: at index ",index_student)
student_data = []
for field in student_fields:
value = input("Enter " + field + ": ")
student_data.append(value)
updated_data.append(student_data)
else:
updated_data.append(row)
counter += 1
# Check if the record is found or not
if index_student is not None:
with open(student_database, "w", encoding="utf-8") as f:
writer = csv.writer(f)
writer.writerows(updated_data)
else:
print("Roll No. not found in our database")

input("Press any key to continue")

def delete_student():
global student_fields
global student_database

print("--- Delete Student ---")


roll = input("Enter roll no. to delete: ")
student_found = False
updated_data = []
with open(student_database, "r", encoding="utf-8") as f:
reader = csv.reader(f)
counter = 0
for row in reader:
if len(row) > 0:
if roll != row[0]:
updated_data.append(row)
counter += 1
else:
student_found = True

if student_found is True:
with open(student_database, "w", encoding="utf-8") as f:
writer = csv.writer(f)
writer.writerows(updated_data)
print("Roll no. ", roll, "deleted successfully")
else:
print("Roll No. not found in our database")

input("Press any key to continue")

while True:
display_menu()

choice = input("Enter your choice: ")


if choice == '1':
add_student()
elif choice == '2':
view_students()
elif choice == '3':
search_student()
elif choice == '4':
update_student()
elif choice == '5':
delete_student()
else:
break
print("-------------------------------")

input()

You might also like