Python 字典(Dictionary)操作详解

yizhihongxing

Python字典(Dictionary)操作详解

Python中的字典(Dictionary)是一种无序的键值对的数据集合,其中每个键(key)唯一对应一个值(value)。这篇文章将详细介绍Python字典的操作方法,包括创建、访问、修改、删除、遍历等操作。

创建字典

字典可以通过两种方式创建,一种是使用大括号{},另一种是使用内置函数dict()。

创建空字典:

empty_dict = {}
print(empty_dict)

# Output: {}

也可以通过键值对初始化字典:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}
print(person)

# Output: {'name': 'Alice', 'age': 25, 'city': 'New York'}

访问字典中的值

可以通过键来访问字典中的值:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}
print(person["name"])

# Output: Alice

如果要访问不存在的键,会出现KeyError异常:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}
print(person["gender"])

# Throws KeyError: 'gender'

可以使用get方法访问字典中的值,如果键不存在则会返回指定的默认值:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}
print(person.get("gender", "Unknown"))

# Output: Unknown

修改字典

可以通过键来修改字典中的值:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}
person["age"] = 26
print(person)

# Output: {'name': 'Alice', 'age': 26, 'city': 'New York'}

也可以使用update方法来更新字典中的值:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}
person.update({"age": 26, "city": "Chicago"})
print(person)

# Output: {'name': 'Alice', 'age': 26, 'city': 'Chicago'}

删除字典元素

可以使用del语句来删除字典中的元素:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}
del person["age"]
print(person)

# Output: {'name': 'Alice', 'city': 'New York'}

也可以使用pop方法来删除指定键的元素,并返回该键对应的值:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}
age = person.pop("age")
print(age)
print(person)

# Output: 25
# Output: {'name': 'Alice', 'city': 'New York'}

遍历字典

可以使用for循环遍历字典中的所有键和值:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}
for key, value in person.items():
    print(f"{key}: {value}")

# Output:
# name: Alice
# age: 25
# city: New York

可以使用for循环遍历字典中的键:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}
for key in person:
    print(key)

# Output:
# name
# age
# city

可以使用for循环遍历字典中的值:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}
for value in person.values():
    print(value)

# Output:
# Alice
# 25
# New York

示例

以下示例展示了如何使用Python字典来统计字符串中每个字符出现的个数:

str = "hello world"
char_count = {}

for char in str:
    if char in char_count:
        char_count[char] += 1
    else:
        char_count[char] = 1

print(char_count)

# Output: {'h': 1, 'e': 1, 'l': 3, 'o': 2, ' ': 1, 'w': 1, 'r': 1, 'd': 1}

以下示例展示了如何使用Python字典来统计一个列表中每个元素出现的次数:

list = [2, 3, 4, 3, 2, 4, 5, 6, 4]
count = {}

for item in list:
    if item in count:
        count[item] += 1
    else:
        count[item] = 1

print(count)

# Output: {2: 2, 3: 2, 4: 3, 5: 1, 6: 1}

本文仅是Python字典操作的简单介绍,还有很多其他相关的方法和技巧。在实际的编程中应该根据具体情况选择适合的操作方法。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python 字典(Dictionary)操作详解 - Python技术站

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

相关文章

  • Python进行密码学反向密码教程

    Python进行密码学反向密码教程 本教程将介绍如何使用Python进行密码学反向密码。通过本教程,您将了解基本的密码学概念以及如何使用Python语言来编写程序来对密码进行反向分析。 什么是密码学反向密码? 密码学反向密码是一种通过猜测密码、穷举密码、绕过密码或者对密码进行加密解密操作来获取或者更改加密信息的技术。密码学反向密码是黑客攻击和网络安全测试中非…

    python 2023年6月5日
    00
  • python中的Pyperclip模块功能详解

    Python中的Pyperclip模块功能详解 Pyperclip是一个Python模块,它可以让你轻松地复制和粘贴文本到剪贴板。Pyperclip模块可以在Windows、Mac OS X和Linux上使用,并且可以Python2和Python 3兼容。本文将详细讲解Pyperclip模块的用法和注意事项,并提供两个示例来说明Pyclip的使用。 Pype…

    python 2023年5月14日
    00
  • python如何解析配置文件并应用到项目中

    Python如何解析配置文件并应用到项目中 在Python项目中,通常需要使用配置文件来存储一些常量或变量。本文将介绍如何使用Python解析配置文件,并将配置文件应用到项目中。我们将使用Python内置的configparser库来解析配置文件。 配置文件的格式 配置文件通常使用INI格式,格式如下: [section1] key1 = value1 ke…

    python 2023年5月15日
    00
  • 解决python 文本过滤和清理问题

    在Python中,我们可以使用正则表达式、字符串操作和第三方库等方法来解决文本过滤和清理问题。以下是一个完整的攻略,包括两个示例说明。 步骤一:了解文本过滤和清理问题 在处理文本数据时,我们经常需要进行过滤和清理操作,以去除无用的信息、格式化文本、提取关键信息等。常见的文本过滤和清理问题包括: 去除HTML标签、XML标签等特殊字符。 去除多余的空格、换行符…

    python 2023年5月14日
    00
  • python3通过gevent.pool限制协程并发数量的实现方法

    python3通过gevent.pool限制协程并发数量的实现方法 在Python中,使用gevent库实现协程并发是一个常见的需求。以下是一个示例,介绍了如何使用gevent.pool限制协程并发数量。 示例一:使用gevent.pool限制协程并发数量 以下是一个示例,使用gevent.pool限制协程并发数量: import gevent from g…

    python 2023年5月15日
    00
  • 基于charles抓取https请求使用过程解析

    当我们需要分析HTTPS请求时,通常情况下,我们通过抓包工具来进行网络请求的截取和分析。而charles正是一种常用的网络抓包工具,大家可以通过设置Charles代理实现抓取Android、iOS等移动端应用请求。下面将详细讲解“基于charles抓取https请求使用过程解析”的完整攻略。 1. 安装Charles及准备环境 首先,我们需要在电脑上安装Ch…

    python 2023年5月23日
    00
  • Python中处理unchecked未捕获异常实例

    处理未捕获异常的方式通常是使用 try-except 语句捕获异常,但有时可能会有一些未知或未知类型的异常,这时候就需要使用一些方法来处理未捕获的异常。Python 提供了一些内置的异常处理机制,如 sys.excepthook() 和 traceback 模块来处理 unchecked 未捕获异常实例。 使用 sys.excepthook() sys.ex…

    python 2023年5月13日
    00
  • python3.7 打包成exe程序方式(只需两行命令)

    下面我会详细讲解Python 3.7打包成exe程序的完整攻略,包含两条示例说明。 1. 准备工作 在开始打包之前,需要确保你已经安装好了Python 3.7版本和pip这个包管理工具。 在此之外,还需要安装两个pip包,分别是pyinstaller和auto-py-to-exe。这两个包可以通过以下命令进行安装: pip install pyinstall…

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