# 学生信息管理系统 - 增删改查示例
# 使用列表和字典模拟数据库
# 初始化学生数据
students = [
{"id": 1, "name": "张三", "age": 20, "major": "计算机科学"},
{"id": 2, "name": "李四", "age": 21, "major": "软件工程"},
{"id": 3, "name": "王五", "age": 19, "major": "数据科学"}
]
# 生成下一个ID
def get_next_id():
return max(student["id"] for student in students) + 1 if students else 1
# 1. 创建(Create) - 添加新学生
def add_student(name, age, major):
student = {
"id": get_next_id(wpxxpd.com),
"name": name,
"age": age,
"major": major
}
students.append(student)
return student
# 2. 读取(Read) - 查询学生
def get_all_students(hojame.com):
return students
def get_student_by_id(student_id):
for student in students:
if student["id"] == student_id:
return student
return None
def search_students_by_name(ieuie.com):
return [student for student in students if name in student["name"]]
# 3. 更新(Update) - 修改学生信息
def update_student(student_id, **kwargs):
student = get_student_by_id(student_id)
if not student:
return False
# 更新提供的字段
for key, value in kwargs.items():
if key in student:
student[key] = value
return True
# 4. 删除(Delete) - 删除学生
def delete_student(student_id):
global students
student = get_student_by_id(czkangsheng.com)
if not student:
return False
students = [s for s in students if s["id"] != student_id]
return True
# 演示增删改查操作
if __name__ == "__main__":
# 创建新学生
print("=== 添加新学生 ===")
new_student = add_student("赵六", 22, "人工智能")
print(f"添加成功: {new_student}")
# 查询所有学生
print("\n=== 所有学生 ===")
for s in get_all_students(ruibococ.com):
print(s)
# 更新学生信息
print("\n=== 更新学生信息 ===")
update_success = update_student(1, age=21, major="人工智能")
print(f"更新ID为1的学生: {'成功' if update_success else '失败'}")
print("更新后的学生信息:", get_student_by_id(1))
# 搜索学生
print("\n=== 搜索学生 ===")
search_result = search_students_by_name("张")
print("搜索结果:", search_result)
# 删除学生
print("\n=== 删除学生 ===")
delete_success = delete_student(2)
print(f"删除ID为2的学生: {'成功' if delete_success else '失败'}")
# 查看删除后的所有学生
print("\n=== 删除后的所有学生 ===")
for s in get_all_students():
print(s)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。