您的位置:

Python字典快速查询与无序列表间映射

Python是一种非常流行的高级编程语言,它有一个非常重要的数据结构——字典。字典可以说是Python中最常用的数据结构之一,其作用就是实现快速的查询和无序列表间的映射。

一、字典的定义和基本操作

字典是Python中使用频率很高的一种数据类型。它是一个集合,其中的每个元素都是由一个唯一的键和一个对应的值组成,键和值之间用冒号分隔。例如:

dict = {'name': 'Tom', 'age': 18, 'city': 'Beijing'}
    print(dict)

输出结果为:

{'name': 'Tom', 'age': 18, 'city': 'Beijing'}

可以使用字典的键来访问对应的值:

print(dict['name'])

输出结果为:

Tom

字典的值可以是任意类型的,包括字符串、数字、列表、元组以及其他字典等。

二、字典的操作方法

1、键值对的添加和删除

可以使用键来添加对应的值:

dict['gender'] = 'male'
    print(dict)

输出结果为:

{'name': 'Tom', 'age': 18, 'city': 'Beijing', 'gender': 'male'}

可以使用键来删除对应的键值对:

del dict['city']
    print(dict)

输出结果为:

{'name': 'Tom', 'age': 18, 'gender': 'male'}

2、键值对的遍历

可以使用字典的items()方法来遍历所有的键值对:

for key, value in dict.items():
        print(key, value)

输出结果为:

name Tom
    age 18
    gender male

可以使用字典的keys()方法来遍历所有的键:

for key in dict.keys():
        print(key)

输出结果为:

name
    age
    gender

可以使用字典的values()方法来遍历所有的值:

for value in dict.values():
        print(value)

输出结果为:

Tom
    18
    male

三、字典的应用

由于字典可以实现快速的查询,因此在Python编程中,字典经常被用于数据存储和查询操作。比如,在一个学生管理系统中,可以使用字典存储每个学生的信息,包括姓名、年龄、性别、班级等。当需要查询某个学生的信息时,只需要输入其姓名,就可以快速地查询到其相关的信息。

下面是一个简单的学生管理系统的代码示例:

students = []
    while True:
        print("请选择操作:")
        print("1.添加学生信息")
        print("2.查询学生信息")
        print("3.退出")

        choice = input("请输入选项(1/2/3):")

        if choice == '1':
            name = input("请输入学生姓名:")
            age = input("请输入学生年龄:")
            gender = input("请输入学生性别:")
            cls = input("请输入学生班级:")

            student = {'name': name, 'age': age, 'gender': gender, 'class': cls}
            students.append(student)

            print("添加成功!")

        elif choice == '2':
            name = input("请输入要查询的学生姓名:")
            for i in students:
                if i['name'] == name:
                    print("学生姓名:", i['name'])
                    print("学生年龄:", i['age'])
                    print("学生性别:", i['gender'])
                    print("所在班级:", i['class'])
                    break
            else:
                print("未找到该学生信息!")

        elif choice == '3':
            break
        else:
            print("输入不合法,请重新输入!")

以上代码中,使用了一个空列表students来存储每个学生的信息,每个学生的信息以一个字典的形式存储。添加学生信息时,首先输入学生姓名、年龄、性别和班级,然后将这些信息存储到一个字典中,最后将该字典添加到students列表中即可。查询学生信息时,只需要输入要查询的学生姓名,然后遍历students列表,找到对应的学生信息后输出即可。