python基础之字典

以下是关于 Python 基础之字典的完整攻略:

什么是字典?

字典是一种数据类型,它的元素以键值对的形式存储。一个键值对就是一个键(key)和一个对应的值(value)构成的,键和它所对应的值之间用冒号分隔,键值对之间用逗号分隔,最后用一对大括号 ({}) 将它们包括起来。字典的键必须是唯一且不可变的对象,而值可以是任意类型的对象。

下面是一个字典的示例:

my_dict = {"name": "Alice", "age": 20, "gender": "female"}

上面的示例中,字典 my_dict 包含了三个键值对,分别是 "name": "Alice", "age": 20 和 "gender": "female"。

如何访问字典中的元素?

可以使用字典中的键来访问对应的值。比如,要访问上面示例中的 "name" 对应的值,可以这样做:

print(my_dict["name"])  # 输出 "Alice"

如何修改字典中的元素?

可以使用键来修改字典中的元素。比如,要将上面示例中的 "age" 对应的值修改为 21,可以这样做:

my_dict["age"] = 21
print(my_dict)  # 输出 {"name": "Alice", "age": 21, "gender": "female"}

如何添加字典中的元素?

可以通过将一个新的键值对添加到字典中来实现。比如,要向上面示例中的字典中添加一个新的键值对 "hobbies": ["reading", "swimming"],可以这样做:

my_dict["hobbies"] = ["reading", "swimming"]
print(my_dict)  # 输出 {"name": "Alice", "age": 21, "gender": "female", "hobbies": ["reading", "swimming"]}

如何删除字典中的元素?

可以使用 del 关键字来删除字典中的元素。比如,要删除上面示例中的 "gender" 对应的键值对,可以这样做:

del my_dict["gender"]
print(my_dict)  # 输出 {"name": "Alice", "age": 21, "hobbies": ["reading", "swimming"]}

字典的其他操作

  1. 获取字典中所有的键:使用 keys() 方法。
print(my_dict.keys())  # 输出 ["name", "age", "hobbies"]
  1. 获取字典中所有的值:使用 values() 方法。
print(my_dict.values())  # 输出 ["Alice", 21, ["reading", "swimming"]]

字典的示例

示例 1:使用字典统计文本中单词的频率

text = "I love programming. Programming is my favorite activity."

# 将文本转换为一个单词列表
words = text.lower().split()

# 统计每个单词出现的次数
freq_dict = {}
for word in words:
    if word in freq_dict:
        freq_dict[word] += 1
    else:
        freq_dict[word] = 1

print(freq_dict)  # 输出 {"i": 1, "love": 1, "programming.": 1, "programming": 1, "is": 1, "my": 1, "favorite": 1, "activity.": 1}

示例 2:使用字典实现一个通讯录

contacts = {}

while True:
    print("1. 添加联系人")
    print("2. 删除联系人")
    print("3. 查找联系人")
    print("4. 查看所有联系人")
    print("5. 退出")

    choice = int(input("请选择操作:"))

    if choice == 1:
        name = input("请输入联系人姓名:")
        phone = input("请输入联系人电话:")
        contacts[name] = phone
        print("联系人添加成功!")
    elif choice == 2:
        name = input("请输入要删除的联系人姓名:")
        if name in contacts:
            del contacts[name]
            print("联系人删除成功!")
        else:
            print("联系人不存在")
    elif choice == 3:
        name = input("请输入要查找的联系人姓名:")
        if name in contacts:
            print(name + " 的电话是:" + contacts[name])
        else:
            print("联系人不存在")
    elif choice == 4:
        for name, phone in contacts.items():
            print(name + ":" + phone)
    elif choice == 5:
        break
    else:
        print("无效的操作,请重新输入!")

上面的示例演示了如何使用字典实现一个简单的通讯录。用户可以选择添加、删除、查找、查看所有联系人或退出程序。程序的主要数据结构就是一个字典,键是联系人的姓名,值是联系人的电话号码。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python基础之字典 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • python编写一个GUI倒计时器

    下面是Python编写一个GUI倒计时器的完整攻略: 1. 准备工作 在编写GUI倒计时器前,我们需要安装Python以及Tkinter库。Python是一种流行的高级编程语言,而Tkinter是Python自带的图形用户界面(GUI)库。 安装Python可以前往官网下载,安装过程中需要选择添加Python到系统路径;安装完成后,打开命令行(Windows…

    python 2023年5月18日
    00
  • Python实现快速多线程ping的方法

    下面是关于 Python 实现快速多线程 Ping 的方法的完整攻略。 1. 确认需求 在开始一项技术实践之前,首先需要明确我们的需求和目的。本次攻略的目的是实现快速多线程的 Ping,以检测目标主机的可达性,并统计出在线主机的数量。因此,需要掌握的技术点包括: 进行 Ping 操作的 Python 库:Python 中常用的 Ping 库有 ping3、p…

    python 2023年5月18日
    00
  • 详解Python 迭代器链

    Python迭代器链是指将多个迭代器顺序链接在一起,形成一个完整的迭代器,可以依次遍历每个迭代器返回值,从而实现对于多个数据结构进行顺序遍历操作。本文将详细介绍Python迭代器链的使用方法,以及示例说明。 迭代器链的使用方法 在Python中,可以通过itertools.chain()函数来创建迭代器链。具体语法如下: import itertools i…

    python-answer 2023年3月25日
    00
  • 基于python tkinter的点名小程序功能的实例代码

    下面我将为你详细讲解“基于python tkinter的点名小程序功能的实例代码”的完整攻略。 1. 简介 本文将介绍如何使用python中的tkinter模块实现一个简单的点名小程序。点名小程序是一种练习编程能力的好项目,通过这个项目我们可以学习如何使用tkinter实现图形化界面,以及如何从程序中随机获取名字等相关知识。 2. 实现步骤 2.1 创建窗口…

    python 2023年5月23日
    00
  • Python可视化模块altair的使用详解

    Python可视化模块altair的使用详解 Altair是一个基于Vega-Lite的声明式可视化库,它允许通过简单的Python语法创建精美的交互性可视化。 安装 你可以使用pip命令来安装Altair: pip install altair 快速入门 以下是一个简单的示例,演示了如何使用Altair创建柱状图: import altair as alt…

    python 2023年6月3日
    00
  • spark dataframe全局排序id与分组后保留最大值行

    在Spark中,DataFrame是一种基于分布式数据集的分布式数据容器。DataFrame可以被看做是一种具有schema的RDD,而且可以很方便地提供关系型数据库的操作方式。在进行数据操作时,会经常用到排序和分组,下面我将详细讲解如何进行全局排序id和分组后保留最大值行的操作。 全局排序id 全局排序id是指对整个数据集进行排序,并为每一行赋一个唯一的编…

    python 2023年6月6日
    00
  • python 判断linux进程,并杀死进程的实现方法

    这里给出一个完整的攻略,包含了使用python判断linux进程并杀死进程的实现方法。 一、介绍 在Linux系统中,使用进程的方式来管理计算机资源,随着进程数量的增多,可能会导致系统变得非常缓慢或者宕机。因此,在Linux操作系统中,需要定期检测并杀死不需要的或已经被挂起的进程。Python的subprocess库提供了一个简单的方法来执行系统命令,使得P…

    python 2023年6月3日
    00
  • 详解Python 获取原始数据

    接下来我会为您讲解Python获取原始数据的完整攻略,包括使用标准库和第三方库进行网络请求和解析HTML等步骤。 使用标准库 Python标准库中 urllib 库和 urllib2 库提供了进行网络请求的基本功能,可以通过以下步骤获取原始数据: 导入 urllib 库和 urllib2 库:在代码文件开始处添加以下行: import urllib impo…

    python-answer 2023年3月25日
    00
合作推广
合作推广
分享本页
返回顶部