Python字典怎么用input输入

问题描述

在编写Python程序时,我们经常需要从用户那里获取输入。对于一些特定的问题,我们可能需要使用字典来存储和处理用户输入的数据。本文将通过一个示例问题来介绍如何使用input函数来输入字典数据,以及如何处理和使用这些数据。

假设我们正在开发一个学生成绩管理系统。我们需要让用户输入学生的姓名和对应的成绩,然后将这些数据存储在一个字典中,并根据用户的输入来进行相应的操作,比如添加学生、删除学生、查找学生等。

方案

首先,让我们来看一下如何使用input函数来获取用户的输入。input函数会等待用户输入,并将用户输入的内容作为字符串返回。我们可以使用这个返回值来创建一个字典。

student_name = input("请输入学生姓名:")
student_score = input("请输入学生成绩:")

student = {
    "姓名": student_name,
    "成绩": student_score
}

上述代码会提示用户输入学生的姓名和成绩,并将这些数据存储在一个字典中。接下来,我们可以使用这个字典来进行一些操作,比如打印学生的姓名和成绩。

print("学生姓名:", student["姓名"])
print("学生成绩:", student["成绩"])

这样,我们就可以将用户输入的学生数据保存在字典中,并对字典中的数据进行操作了。

接下来,我们需要能够处理多个学生的数据。一个简单的方法是使用一个列表来存储多个学生的字典。每个字典表示一个学生的信息。

students = []

# 添加学生
students.append(student)

# 打印学生信息
for student in students:
    print("学生姓名:", student["姓名"])
    print("学生成绩:", student["成绩"])

上述代码中,我们使用了一个空的列表来存储学生的字典。我们可以使用append方法向列表中添加学生字典。然后,我们可以使用for循环来遍历列表,并打印每个学生的信息。

此外,我们还可以通过用户输入的操作来对学生数据进行增删改查。我们可以使用一个无限循环来等待用户的输入,并根据用户输入的操作来执行相应的操作。

students = []

while True:
    print("请输入操作:")
    print("1. 添加学生")
    print("2. 删除学生")
    print("3. 查找学生")
    print("4. 退出")

    choice = input()

    if choice == "1":
        student_name = input("请输入学生姓名:")
        student_score = input("请输入学生成绩:")

        student = {
            "姓名": student_name,
            "成绩": student_score
        }

        students.append(student)
        print("学生添加成功!")

    elif choice == "2":
        student_name = input("请输入要删除的学生姓名:")

        for student in students:
            if student["姓名"] == student_name:
                students.remove(student)
                print("学生删除成功!")
                break
        else:
            print("学生不存在!")

    elif choice == "3":
        student_name = input("请输入要查找的学生姓名:")

        for student in students:
            if student["姓名"] == student_name:
                print("学生姓名:", student["姓名"])
                print("学生成绩:", student["成绩"])
                break
        else:
            print("学生不存在!")

    elif choice == "4":
        break

    else:
        print("无效的操作!")

上述代码中,我们使用了一个无限循环来等待用户的输入。用户可以选择要执行的操作,比如添加学生、删除学生、查找学生等。根据用户的选择,我们执行相应的操作。

示例图

下面是一个使用mermaid语法绘制的示例图,显示了用户与程序之间的交互过程。

sequenceDiagram
    participant 用户
    participant 程序

    用户->>程序: 请输入学生姓名
    程序->>用户: 
    用户->>程序: 请输入学生成绩
    程序->>用户: 
    用户->>程序: 
    程序->>用户: