python常用数据结构字典梳理

Python常用数据结构——字典

什么是字典

字典是Python中一个非常常用的数据结构,它是一个键值对的无序集合,每个键对应一个值。键可以是任何不可修改的数据类型,如字符串、数字或元组,而值则可以是任何数据类型。

字典的构造方式是用花括号 {} 括起来,键值对之间使用冒号 : 分隔,键值对之间使用逗号 , 分隔。

下面是一个简单的字典示例:

my_dict = {'apple': 5, 'banana': 7, 'orange': 3}

字典的常用操作

访问字典中的键值对

可以使用方括号 [] 运算符来访问字典中的键值对,例如:

my_dict = {'apple': 5, 'banana': 7, 'orange': 3}
print(my_dict['apple']) # output: 5

向字典中添加新键值对

可以使用方括号 [] 运算符来添加新键值对,例如:

my_dict = {'apple': 5, 'banana': 7, 'orange': 3}
my_dict['peach'] = 4
print(my_dict) # output: {'apple': 5, 'banana': 7, 'orange': 3, 'peach': 4}

修改字典中的键值对

可以使用方括号 [] 运算符来修改字典中的键值对,例如:

my_dict = {'apple': 5, 'banana': 7, 'orange': 3}
my_dict['apple'] = 3
print(my_dict) # output: {'apple': 3, 'banana': 7, 'orange': 3}

删除字典中的键值对

可以使用 del 关键字来删除字典中的键值对,例如:

my_dict = {'apple': 5, 'banana': 7, 'orange': 3}
del my_dict['apple']
print(my_dict) # output: {'banana': 7, 'orange': 3}

获取字典中所有键

可以使用 keys() 方法获取字典中所有键,例如:

my_dict = {'apple': 5, 'banana': 7, 'orange': 3}
print(my_dict.keys()) # output: dict_keys(['apple', 'banana', 'orange'])

获取字典中所有值

可以使用 values() 方法获取字典中所有值,例如:

my_dict = {'apple': 5, 'banana': 7, 'orange': 3}
print(my_dict.values()) # output: dict_values([5, 7, 3])

获取字典中所有键值对

可以使用 items() 方法获取字典中所有键值对,例如:

my_dict = {'apple': 5, 'banana': 7, 'orange': 3}
print(my_dict.items()) # output: dict_items([('apple', 5), ('banana', 7), ('orange', 3)])

示例

示例一:字典的遍历

my_dict = {'apple': 5, 'banana': 7, 'orange': 3}

# 遍历所有键
for key in my_dict.keys():
    print(key)

# 遍历所有值
for value in my_dict.values():
    print(value)

# 遍历所有键值对
for key, value in my_dict.items():
    print(key + ":" + str(value))

输出结果:

apple
banana
orange
5
7
3
apple:5
banana:7
orange:3

示例二:计算字符串中每个字母出现的次数

my_str = "hello, world!"
my_dict = {}

for ch in my_str:
    if ch not in my_dict:
        my_dict[ch] = 1
    else:
        my_dict[ch] += 1

print(my_dict)

输出结果:

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

这个示例中,我们遍历了字符串中的每个字符,如果这个字符不在字典 my_dict 中,那么我们就将这个字符加入字典中,并将出现次数初始化为 1;否则,我们就将这个字符的出现次数加 1。最后输出字典 my_dict,即可得到每个字母出现的次数。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python常用数据结构字典梳理 - Python技术站

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

相关文章

  • 详解基于K-means的用户画像聚类模型

    详解基于K-means的用户画像聚类模型 简介 K-means是一种经典的聚类算法,可以在无监督的情况下对数据进行分组。本文将详细介绍如何使用K-means算法来构建用户画像聚类模型。 步骤 1.数据收集 首先需要获得用户的相关数据,例如用户的基本信息,用户的行为数据等。这些数据可以从不同的数据源收集,比如数据库、社交网络、推荐系统等。需要注意的是,数据要求…

    python 2023年6月3日
    00
  • 使用Python判断IP地址合法性的方法实例

    标题:使用Python判断IP地址合法性的方法实例 介绍 在开发网络应用时,我们通常需要判断用户输入的IP地址是否合法,这其中就需要用到Python计算机语言。本篇文章将详细讲解使用Python判断IP地址合法性的方法,并提供两个实例供大家参考。 IP地址的格式 IP地址是一个由32位二进制数组成的四位数组,每个数用小数点隔开。例如:192.168.0.1。…

    python 2023年6月3日
    00
  • python中的闭包用法实例详解

    让我给您详细讲解“python中的闭包用法实例详解”。 什么是闭包? 闭包是指函数对象可以访问其词法作用域外的变量的能力。具体来说,闭包是一个嵌套函数,并且它可以引用其环境的变量。在Python中,闭包是一种函数式编程方式,它可以让我们使用高阶函数和装饰器。 闭包的基本语法 在Python中,闭包函数的基本语法如下: def outer_function()…

    python 2023年5月18日
    00
  • pip报错“ModuleNotFoundError: No module named ‘pip._vendor.packaging’”怎么处理?

    当使用pip安装Python包时,可能会遇到“ModuleNotFoundError: No module named ‘pip._vendor.packaging’”错误。这个错误通常是由以下原因之一引起的: pip版本过低:如果pip版本过低,则可能会出现此错误。在这种情况下,需要升级pip版本。 pip安装文件损坏:如果pip安装文件损坏,则可能会出现…

    python 2023年5月4日
    00
  • Python机器学习算法之决策树算法的实现与优缺点

    Python机器学习算法之决策树算法的实现与优缺点 决策树算法是一种常用的机器学习算法,它可以用于分类和回归问题。在本文中,我们将详细讲解Python决策树算法的实现和优缺点,包括决策树的定义、决策树算法的实现示例说明等。 决树的定义 决策树是一种树形结构它可以用于分类和回归问题。在分类问题中,决策树将数据集分成多个类别,每个类别对应一个叶子节点。在回归问题…

    python 2023年5月14日
    00
  • python找不到依赖pypiwin32或pywin32-ctypes的错误

    以下是关于“Python 找不到依赖 pypiwin32 或 pywin32-ctypes 的错误”的完整攻略: 问题描述 在使用 Python 进行开发时会遇到找不到依赖 pypiwin32 或 pywin32-ctypes 的错误。本文将介绍如何解决这个问题。 解决方法 1. 使用 pip 安装 可以使用 pip 命令在命令行中安装 pypiwin32 …

    python 2023年5月13日
    00
  • Python导入不同文件夹中文件的方法详解

    下面是Python导入不同文件夹中文件的方法详解的完整攻略。 1.为什么要导入不同文件夹中的文件? 在Python中,我们通常会将程序代码组织成不同的模块或者包,以达到代码复用、可读性、可维护性的目的。在实际开发中,我们可能会将不同的模块或包放在不同的文件夹中,这时候就需要使用到Python导入不同文件夹中文件的方法。 2.导入同级文件夹中的文件 如果要导入…

    python 2023年6月3日
    00
  • 使用Numpy打乱数组或打乱矩阵行

    使用Numpy的random模块可以轻松地快速打乱数组或矩阵的行。 方法一:使用shuffle函数打乱数组或矩阵行 numpy.random.shuffle(x)可以打乱数组或矩阵的行 示例: import numpy as np # 打乱一维数组 x = np.array([1, 2, 3, 4, 5]) np.random.shuffle(x) prin…

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