page contents

Python必知必会:字典(dict)常用操作

本文讲述了python必知必会:字典(dict)常用操作具有很好的参考价值,希望对大家有所帮助。一起跟随六星小编过来看看吧,具体如下:

attachments-2024-01-CJxW5isr659ce4eb525d8.jpg本文讲述了python必知必会:字典(dict)常用操作具有很好的参考价值,希望对大家有所帮助。一起跟随六星小编过来看看吧,具体如下:

在Python中,字典是一种非常强大且常用的数据结构。它提供了一种键值对(key-value pair)的存储方式,使得数据的存取变得既快速又方便。

字典的键可以是任何不可变类型,如字符串、数字或元组,而值则可以是任何数据类型。

我将详细介绍Python字典的常用操作,帮助初学者更好地理解和使用这一功能。

1. 创建字典

创建字典的基本方法是使用花括号 {},在其中放置以逗号分隔的键值对。例如:

my_dict = {'name': '张三', 'age': 30, 'city': '北京'}

此外,也可以使用 dict() 函数来创建字典。例如:

my_dict = dict(name='张三', age=30, city='北京')

2. 访问字典中的值

要访问字典中的值,可以使用相应的键。例如,要获取上面字典中的姓名:

name = my_dict['name']

print(name)  # 输出:张三

如果尝试访问字典中不存在的键,将引发 KeyError。为了避免这种错误,可以使用 get() 方法,当键不存在时,它将返回 None 或者指定的默认值。例如:

address = my_dict.get('address', '地址未知')

print(address)  # 输出:地址未知

3. 修改字典

可以直接通过键来修改字典中的值。如果该键存在,其值将被更新;如果不存在,将添加新的键值对。例如:

my_dict['age'] = 31  # 修改已存在的键

my_dict['address'] = '上海'  # 添加新的键值对

4. 删除字典中的元素

可以使用 del 语句来删除字典中的特定元素。例如:

del my_dict['address']

还可以使用 pop() 方法来删除并返回字典中的特定元素。例如:

age = my_dict.pop('age')

print(age)  # 输出:31

5. 字典的遍历

遍历字典时,可以使用 items() 方法来获取键值对,keys() 方法来获取所有键,以及 values() 方法来获取所有值。例如:

for key, value in my_dict.items():

    print(f"{key}: {value}")

# 输出:

# name: 张三

# city: 北京

6. 字典的合并

可以使用 update() 方法来合并两个字典。该方法会更新已存在的键值对,并添加不存在的键值对。例如:

other_dict = {'gender': '男', 'age': 32}

my_dict.update(other_dict)

7. 字典推导式

字典推导式(dictionary comprehension)是创建字典的快速方法。它类似于列表推导式,但用于生成键值对。例如,将一个数字列表转换为其平方的字典:

squares = {x: x*x for x in range(6)}

print(squares)  # 输出:{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25}

8. 字典的排序

虽然字典本身是无序的,但可以对其进行排序并生成一个新的有序结构,如列表。例如,根据键排序:

sorted_dict = dict(sorted(my_dict.items()))

或者根据值排序:

sorted_by_value = dict(sorted(my_dict.items(), key=lambda item: item[1]))

9. 字典的嵌套

字典可以嵌套其他字典,从而创建更复杂的数据结构。例如:

python

nested_dict = {'child1': {'name': '小明', 'age': 5},

               'child2': {'name': '小红', 'age': 7}}

练习

编写一个程序,统计一段文本中每个单词出现的频率。为了简化问题,假设文本中只包含字母和空格,不包含标点符号和数字。

步骤:

输入一段文本。

将文本拆分为单词列表。

使用字典统计每个单词出现的次数。

打印每个单词及其出现次数。

示例文本:"hello world hello python"

更多相关技术内容咨询欢迎前往并持续关注六星社区了解详情。

想高效系统的学习Python编程语言,推荐大家关注一个微信公众号:Python编程学习圈。每天分享行业资讯、技术干货供大家阅读,关注即可免费领取整套Python入门到进阶的学习资料以及教程,感兴趣的小伙伴赶紧行动起来吧。

attachments-2022-05-rLS4AIF8628ee5f3b7e12.jpg

  • 发表于 2024-01-09 14:17
  • 阅读 ( 194 )
  • 分类:Python开发

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
轩辕小不懂
轩辕小不懂

2403 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1474 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章