使用字典描述学生信息,包括sno(学号),name(姓名),score(成绩),使用列表存储学生信息。在课堂已实现代码的基础上完成如下功能:1、完善程序:在增加学生时要进行学号检查,学号不重复才能加入(既要实现学号的唯一性) 2、根据学号查找到某位学生,对其姓名进行修改。3、根据学号找到某位学生,对其信息进行删除。
在课堂已实现代码的基础上,你可能需要把之前的代码贴出来。根据本题描述,参考代码如下:
# 学生列表
students = []
def add_student():
sno = input("请输入学号:")
name = input("请输入姓名:")
score = input("请输入成绩:")
# 检查学号是否已存在
for student in students:
if student['sno'] == sno:
print("学号已存在,请重新输入。")
return
# 创建学生字典并添加到列表
student = {'sno': sno, 'name': name, 'score': score}
students.append(student)
print("学生信息添加成功。")
def modify_name():
sno = input("请输入要修改姓名的学生的学号:")
# 查找学生并修改姓名
for student in students:
if student['sno'] == sno:
new_name = input("请输入新的姓名:")
student['name'] = new_name
print("学生姓名修改成功。")
return
print("未找到对应学号的学生。")
def delete_student():
sno = input("请输入要删除的学生的学号:")
# 查找学生并删除
for student in students:
if student['sno'] == sno:
students.remove(student)
print("学生信息删除成功。")
return
print("未找到对应学号的学生。")
# 测试
add_student()
add_student()
add_student()
print(students)
modify_name()
print(students)
delete_student()
print(students)
Python可以使用字典来描述学生信息,并使用列表来存储多个学生。具体实现如下:
# 定义学生信息字典
student1 = {
'学号': '001',
'姓名': '张三',
'年龄': 18,
'性别': '男',
'院系': '计算机科学与技术',
}
student2 = {
'学号': '002',
'姓名': '李四',
'年龄': 20,
'性别': '女',
'院系': '电子信息工程',
}
# 使用列表来存储多个学生
students = [student1, student2]
为了保证学号的唯一性,可以在添加学生时进行学号检查。具体步骤如下:
check_id
,用于检查学号是否已经存在于列表中。def check_id(students, id):
for student in students:
if student['学号'] == id:
return True
return False
# 添加学生信息
def add_student(students):
id = input("请输入学号:")
if check_id(students, id):
print("该学号已经存在!")
else:
name = input("请输入姓名:")
age = int(input("请输入年龄:"))
sex = input("请输入性别:")
department = input("请输入院系:")
student = {
'学号': id,
'姓名': name,
'年龄': age,
'性别': sex,
'院系': department,
}
students.append(student)
print("添加成功!")
要修改学生姓名,可以根据学号查找到该学生,并修改其姓名。具体步骤如下:
find_student
,用于根据学号查找学生记录。def find_student(students, id):
for student in students:
if student['学号'] == id:
return student
return None
# 修改学生姓名
def update_student(students):
id = input("请输入学号:")
student = find_student(students, id)
if student is None:
print("找不到该学生!")
else:
name = input("请输入新的姓名:")
student['姓名'] = name
print("修改成功!")
要删除学生信息,可以根据学号从列表中删除该条记录。具体步骤如下:
delete_student
,用于根据学号删除学生记录。def delete_student(students, id):
for i in range(len(students)):
if students[i]['学号'] == id:
del students[i]
return True
return False
# 删除学生信息
def delete_student_info(students):
id = input("请输入学号:")
if delete_student(students, id):
print("删除成功!")
else:
print("找不到该学生!")