首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【python 字典(dict)和集合(set)】创建、访问、基本操作及各自的特点】

【python 字典(dict)和集合(set)】创建、访问、基本操作及各自的特点】

作者头像
flos chen
发布2026-01-23 15:19:04
发布2026-01-23 15:19:04
920
举报

Python 中的字典(dict)和集合(set)都是内置的数据结构,它们各自有不同的用途和特点。以下是它们的创建、访问和基本操作,以及它们之间的区别和特点。

字典(Dict)

创建:

代码语言:javascript
复制
# 创建一个空字典
my_dict = {}

# 创建一个包含键值对的字典
my_dict = {'name': 'Alice', 'age': 25}

访问:

代码语言:javascript
复制
# 访问字典中的值
name = my_dict['name']  # 访问键为'name'的值

# 使用get方法访问,如果键不存在则返回None或指定的默认值
age = my_dict.get('age', 0)  # 如果'age'键不存在,则返回0

基本操作:

代码语言:javascript
复制
# 添加键值对
my_dict['gender'] = 'Female'

# 删除键值对
del my_dict['age']

# 修改键值对
my_dict['name'] = 'Bob'

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

# 检查键是否存在
if 'name' in my_dict:
    print("Key 'name' exists.")
集合(Set)

创建:

代码语言:javascript
复制
# 创建一个空集合
my_set = set()

# 创建一个包含元素的集合
my_set = {1, 2, 3, 4}

访问: 集合是无序的,不提供索引访问,但可以检查元素是否存在。

代码语言:javascript
复制
# 检查元素是否存在
if 3 in my_set:
    print("3 is in the set")

基本操作:

代码语言:javascript
复制
# 添加元素
my_set.add(5)

# 删除元素
my_set.discard(2)  # 移除元素,如果元素不存在不会报错
my_set.remove(4)   # 移除元素,如果元素不存在会报错

# 清空集合
my_set.clear()

# 遍历集合
for element in my_set:
    print(element)

# 集合运算
union_set = my_set.union({6, 7})  # 并集
intersection_set = my_set.intersection({1, 2, 3, 8})  # 交集
difference_set = my_set.difference({1, 2})  # 差集
symmetric_difference_set = my_set.symmetric_difference({1, 9})  # 对称差集
区别和特点

字典(Dict)特点:

  • 存储键值对。
  • 键必须是唯一的,值可以重复。
  • 键可以是任何不可变类型,如字符串、数字或元组。
  • 通过键来访问值。
  • 可变类型,可以添加、删除和修改键值对。
  • 用花括号 {} 表示。

集合(Set)特点:

  • 存储无序的唯一元素。
  • 元素必须是可哈希的,不能有可变类型,如列表。
  • 不能通过索引访问元素,但可以快速检查元素是否存在。
  • 可变类型,可以添加和删除元素。
  • 支持数学上的集合运算,如并集、交集、差集等。
  • 用花括号 {} 表示,但如果集合中的元素是可迭代的,需要在元素前后加上圆括号,例如 {(1, 2)}

总的来说,字典适合存储和操作键值对数据,而集合适合进行元素的唯一性和集合运算。字典提供了通过键快速访问值的能力,而集合则提供了快速的成员检查和集合运算功能。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2026-01-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 字典(Dict)
  • 集合(Set)
  • 区别和特点
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档