Python 文件操作实战:学生成绩管理系统(含代码)
当然可以!下面是一个实战案例,涉及到了文件的基本操作、文件系统操作(os 模块)和 csv 文件操作。\n\n案例:学生成绩管理系统\n\n需求:实现一个学生成绩管理系统,能够记录学生的姓名和成绩,并提供添加学生、查询学生信息和删除学生的功能。\n\n代码实现:\n\npython\nimport csv\nimport os\n\ndef create_student():\n name = input("请输入学生姓名:")\n score = input("请输入学生成绩:")\n \n with open("students.csv", "a", newline="") as csvfile:\n writer = csv.writer(csvfile)\n writer.writerow([name, score])\n \n print("学生信息添加成功!")\n\ndef search_student():\n name = input("请输入要查询的学生姓名:")\n \n with open("students.csv", "r") as csvfile:\n reader = csv.reader(csvfile)\n for row in reader:\n if row[0] == name:\n print("学生姓名:", row[0])\n print("学生成绩:", row[1])\n return\n \n print("查无此人!")\n\ndef delete_student():\n name = input("请输入要删除的学生姓名:")\n \n with open("students.csv", "r") as csvfile:\n reader = csv.reader(csvfile)\n rows = list(reader)\n \n with open("students.csv", "w", newline="") as csvfile:\n writer = csv.writer(csvfile)\n for row in rows:\n if row[0] != name:\n writer.writerow(row)\n \n print("学生信息删除成功!")\n\ndef main_menu():\n while True:\n print("\n1. 添加学生信息")\n print("2. 查询学生信息")\n print("3. 删除学生信息")\n print("4. 退出系统")\n choice = input("请选择功能:")\n \n if choice == "1":\n create_student()\n elif choice == "2":\n search_student()\n elif choice == "3":\n delete_student()\n elif choice == "4":\n break\n else:\n print("输入有误,请重新选择!")\n\nif __name__ == "__main__":\n if not os.path.exists("students.csv"):\n with open("students.csv", "w", newline="") as csvfile:\n writer = csv.writer(csvfile)\n writer.writerow(["姓名", "成绩"])\n \n main_menu()\n\n\n说明:\n1. 程序首先会检查当前目录下是否存在名为"students.csv"的文件,如果不存在,则创建一个新的文件,并写入表头信息。\n2. create_student()函数用于添加学生信息,将学生的姓名和成绩写入"students.csv"文件中。\n3. search_student()函数用于查询学生信息,根据输入的姓名在"students.csv"文件中查找对应的学生信息,并打印出来。\n4. delete_student()函数用于删除学生信息,根据输入的姓名在"students.csv"文件中删除对应的学生信息。\n5. main_menu()函数是主菜单函数,提供了添加、查询、删除和退出系统的功能选择。\n\n这个案例涵盖了文件的基本操作(打开、写入、读取、删除)、文件系统操作(检查文件是否存在、创建文件)和csv文件操作(写入表头、写入数据、读取数据)。通过这个案例的实操,你可以更好地理解和掌握相关的知识点。
原文地址: https://www.cveoy.top/t/topic/qkcP 著作权归作者所有。请勿转载和采集!