python做一段学生管理系统,xlrd读取excel数据,且可以修改,删除学生信息的可运行代码,并告诉我使用方法
时间: 2024-05-02 08:22:59 浏览: 69
Python实现学生管理系统,可以对学生信息进行添加、删除、修改、查询、排序、统计
好的,关于你提出的问题,这里是一段 Python 学生管理系统的可运行代码,使用 xlrd 读取 Excel 数据,并且可以修改和删除学生信息:
```python
import xlrd
import xlwt
# 定义学生信息类
class Student:
def __init__(self, id, name, age, gender, score):
self.id = id
self.name = name
self.age = age
self.gender = gender
self.score = score
def __str__(self):
return "学号:{}, 姓名:{}, 年龄:{}, 性别:{}, 成绩:{}".format(
self.id, self.name, self.age, self.gender, self.score)
# 定义 Excel 文件读取函数
def read_excel(file_path):
workbook = xlrd.open_workbook(file_path)
sheet = workbook.sheet_by_index(0)
students = []
for i in range(1, sheet.nrows):
student = Student(sheet.cell(i, 0).value, sheet.cell(i, 1).value,
sheet.cell(i, 2).value, sheet.cell(i, 3).value, sheet.cell(i, 4).value)
students.append(student)
return students
# 定义 Excel 文件写入函数
def write_excel(file_path, students):
workbook = xlwt.Workbook()
sheet = workbook.add_sheet("Sheet1")
for i in range(len(students)):
sheet.write(i + 1, 0, students[i].id)
sheet.write(i + 1, 1, students[i].name)
sheet.write(i + 1, 2, students[i].age)
sheet.write(i + 1, 3, students[i].gender)
sheet.write(i + 1, 4, students[i].score)
workbook.save(file_path)
# 查询学生信息函数
def query_student(students):
id = input("请输入要查询的学生学号:")
for student in students:
if student.id == id:
print(student)
break
else:
print("找不到该学生!")
# 添加学生信息函数
def add_student(students):
id = input("请输入学号:")
name = input("请输入姓名:")
age = input("请输入年龄:")
gender = input("请输入性别:")
score = input("请输入成绩:")
student = Student(id, name, age, gender, score)
students.append(student)
# 修改学生信息函数
def modify_student(students):
id = input("请输入要修改的学生学号:")
for student in students:
if student.id == id:
name = input("请输入姓名:")
age = input("请输入年龄:")
gender = input("请输入性别:")
score = input("请输入成绩:")
student.name = name
student.age = age
student.gender = gender
student.score = score
print("修改成功!")
break
else:
print("找不到该学生!")
# 删除学生信息函数
def delete_student(students):
id = input("请输入要删除的学生学号:")
for i in range(len(students)):
if students[i].id == id:
del students[i]
print("删除成功!")
break
else:
print("找不到该学生!")
# 主函数
def main():
# 读取 Excel 文件
file_path = "students.xls"
students = read_excel(file_path)
# 显示菜单
while True:
print("=" * 30)
print("学生管理系统")
print("1. 查询学生信息")
print("2. 添加学生信息")
print("3. 修改学生信息")
print("4. 删除学生信息")
print("5. 退出")
print("=" * 30)
choice = input("请选择操作:")
# 根据菜单选项执行相应的操作
if choice == "1":
query_student(students)
elif choice == "2":
add_student(students)
elif choice == "3":
modify_student(students)
elif choice == "4":
delete_student(students)
elif choice == "5":
# 写入 Excel 文件并退出程序
write_excel(file_path, students)
print("谢谢使用!")
break
if __name__ == '__main__':
main()
```
使用方法:
1. 准备学生信息的 Excel 文件,文件需要按照以下格式填写:
| 学号 | 姓名 | 年龄 | 性别 | 成绩 |
| --- | --- | --- | --- | --- |
| 001 | 张三 | 18 | 男 | 90 |
| 002 | 李四 | 19 | 女 | 85 |
| 003 | 王五 | 20 | 男 | 88 |
2. 将上述代码保存在 Python 文件中,并且将文件名命名为 student_management_system.py。
3. 在命令行或终端中进入代码所在的目录,并且执行以下命令:
```
python student_management_system.py
```
4. 根据命令行或终端中的提示,选择相应的操作进行学生信息的管理,包括查询、添加、修改和删除。最后选择退出程序,程序会将修改后的学生信息保存到 Excel 文件中。
阅读全文