Python字典简介以及用法详解

Python中的字典是一种无序的数据集合,常用来表示键值对。在Python字典中,每个键都映射到一个值,这些键-值对同时保存在大括号{}中,如下所示:

my_dict = {"key1": "value1", "key2": "value2"}

字典是Python中非常重要的数据结构,它的用途包括:

  1. 快速查找:以键为索引,通过键查找值的效率比通过列表或数组的下标查找元素要高得多。

  2. 节省空间:字典在内存上的使用比列表要更加节省,因为它不需要连续的内存块。

  3. 多种用途:字典可以用来存储大量的数据,也可以作为配置文件等数据结构使用。

下面是Python字典的常见用法详解:

创建字典:

创建字典的基本结构是用一对大括号{},在括号内指定键值对。如果需要添加多个键值对,可以使用逗号分隔:

# 创建一个字典
my_dict = {"key1": "value1", "key2": "value2"}

# 打印字典
print(my_dict)
# {'key1': 'value1', 'key2': 'value2'}

访问字典中的值:

可以通过方括号[]直接访问字典中的值,指定键名,并使用引号将其圈起来:

# 访问字典中的值
print(my_dict["key1"])
# value1

print(my_dict["key2"])
# value2

如果访问字典中不存在的键名,会抛出一个KeyError的异常,可以用get方法避免这种情况。

修改字典中的值:

可以通过直接赋值的方式修改字典中的值,直接指定键名即可:

# 修改字典中的值
my_dict["key1"] = "new_value1"

# 打印修改后的字典
print(my_dict)
# {'key1': 'new_value1', 'key2': 'value2'}

添加键值对:

添加新的键值对到字典中,可以通过给字典赋值的方式实现。如果该键名已存在,它的值会被覆盖:

# 添加键值对
my_dict["key3"] = "value3"

# 打印添加后的字典
print(my_dict)
# {'key1': 'new_value1', 'key2': 'value2', 'key3': 'value3'}

删除键值对:

可以使用del语句从字典中删除一个键值对,语法为:del dict[key],其中key为要删除的键名:

# 删除键值对
del my_dict["key1"]

# 打印删除后的字典
print(my_dict)
# {'key2': 'value2', 'key3': 'value3'}

字典遍历:

使用循环来遍历字典中的键值对,可以通过items()方法实现。items()方法返回一个元组列表,其中每个元组都包含一个键值对:

# 字典遍历
for key, value in my_dict.items():
    print(key, value)
# key2 value2
# key3 value3

字典的其他方法:

Python中的字典还有许多方法,例如keys()、values()、len()、clear()等。

# 获取所有的键
print(my_dict.keys())
# dict_keys(['key2', 'key3'])

# 获取所有的值
print(my_dict.values())
# dict_values(['value2', 'value3'])

# 获取键值对的数量
print(len(my_dict))
# 2

# 清空字典
my_dict.clear()
print(my_dict)
# {}

接下来,我们来看两个示例说明:

示例1:统计字符串中每个单词出现的次数

# 统计字符串中每个单词出现的次数
def word_count(text):
    # 创建一个空字典来存储结果
    result_dict = {}

    # 将字符串转换为小写,并分割成单词
    words = text.lower().split()

    # 统计每个单词出现的次数
    for word in words:
        if word in result_dict:
            # 如果单词已存在,次数+1
            result_dict[word] += 1
        else:
            # 如果单词不存在,新建一个键值对
            result_dict[word] = 1

    # 返回结果字典
    return result_dict

# 测试
text = "This is a test. This is only a test."
result = word_count(text)
print(result)
# {'this': 2, 'is': 2, 'a': 2, 'test.': 1, 'only': 1, 'test.': 1}

示例2:使用字典实现Switch语句

在Python中,没有Switch语句,但可以使用字典来模拟:

# Switch语句模拟实现
def switch_case(case):
    switch_dict = {
        "case1": "第一种情况",
        "case2": "第二种情况",
        "case3": "第三种情况",
        "default": "默认情况"
    }
    return switch_dict.get(case, "输入有误!")

# 测试
result1 = switch_case("case1")
result2 = switch_case("case4")
print(result1)
# 第一种情况
print(result2)
# 输入有误!

以上是Python字典的简介以及用法详解。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python字典简介以及用法详解 - Python技术站

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

相关文章

  • Python 3.6 -win64环境安装PIL模块的教程

    下面是“Python3.6-win64环境安装PIL模块的教程”的完整攻略。 1. 安装Pillow模块 Pillow是Python的一个图像处理库,它的前身是PIL(Python Image Library),但PIL的更新非常缓慢,所以建议使用Pillow。 首先,需要用pip安装Pillow。打开命令行,输入以下命令: pip install Pill…

    python 2023年5月14日
    00
  • python可迭代对象去重实例

    下面是Python可迭代对象去重的攻略。 什么是可迭代对象 在Python中,可迭代对象是指可以使用for循环进行遍历的对象,比如列表、元组、字典、集合等。可迭代对象是一种数据结构,它保存了一组值,可以被遍历多次。 可迭代对象去重的实现方法 方法一:使用set() Python的set()函数可以用来去重。当把一个可迭代对象转换为set对象后,重复的元素就会…

    python 2023年6月3日
    00
  • Python如何访问字符串中的值

    当我们要在Python中访问字符串中的值时,可以使用下标(index)来获取字符串中特定位置的字符。使用下标时,需要将下标放置在字符串变量的名称后面,并将下标值放到一对方括号中。 示例如下: str1 = "Hello, World!" print(str1[0]) # 输出第一个字符"H" print(str1[7]…

    python 2023年6月5日
    00
  • 用什么库写 Python 命令行程序(示例代码详解)

    使用Python编写命令行程序的时候,我们需要使用第三方库来实现。下面是可供参考的几个常用的Python库: argparse:argparse是Python内置的标准模块,提供了非常方便和简单的命令行解析方法。具体使用方法可见下面的示例1。 docopt:docopt 是一个使用 docstring 来解析命令行参数的库。它非常简单,不需要引用冗长的文档来…

    python 2023年5月31日
    00
  • Python for循环及基础用法详解

    下面我来详细讲解一下“Python for循环及基础用法详解”的完整攻略。 什么是for循环 在Python中,for循环是一种重复执行代码块的结构。它可以遍历任何序列(如列表、元组、字典、字符串等)中的元素,并对每个元素执行指定的操作。 for循环语法 for循环的语法格式如下: for 变量 in 序列: # 执行操作 其中,变量是用于存储序列中每个元素…

    python 2023年5月13日
    00
  • python并发编程多进程 模拟抢票实现过程

    Python并发编程多进程模拟抢票实现过程 什么是并发编程? 并发指处理多个事情的能力,而并发编程指同时执行多个任务的能力。在Python中,可以通过多线程、多进程和协程等方式实现并发编程。 什么是多进程? 多进程是指启动多个进程来同时执行不同的任务。与单进程相比,多进程能够实现更高的性能,因为多个进程可以在不同的CPU核心上同时运行。 模拟抢票实现过程示例…

    python 2023年5月19日
    00
  • 详解python的xlwings库读写excel操作总结

    下面我来详细讲解一下“详解Python的xlwings库读写Excel操作总结”的完整实例教程。 1. 介绍xlwings库 xlwings是一个Python库,它可以用来操作Excel文件。它能够像VBA一样实现读取、写入数据和操作Excel的各种功能,并且可与Python生态系统中的众多数据分析和科学计算工具集成使用。它的主要功能包括以下几个方面: 自动…

    python 2023年5月13日
    00
  • python字典和json.dumps()的遇到的坑分析

    下面是完整的攻略。 问题描述 在Python中,字典和JSON是经常使用的数据格式。在使用时,有些情况下我们会遇到一些坑,下面我们就具体讲解一下字典和JSON的相关知识。 字典 在Python中,字典是一种可变容器,可存放任意数量任意类型的Python对象,其中每一个字典元素由一个键和一个对应的值组合而成。字典的创建格式如下: dict = {‘Name’:…

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