当前位置: 首页 > article >正文

Python中容器类型的数据(下)

集合

集合 (set) 是一种可迭代的、无序的、不能包含重复元素的容器类型的数据。

Python中的集合是一种重要的数据结构,以下为你详细介绍:
定义与特点

无序性:集合中的元素没有固定顺序, {1, 2, 3} 和 {3, 2, 1} 在Python中是同一个集合。
唯一性:集合中不存在重复元素,如 {1, 2, 2, 3} 会被自动处理为 {1, 2, 3} 。
可变性:集合可以动态添加或删除元素,属于可变数据类型。
创建方式

直接使用花括号: set1 = {1, 2, 3} 。
使用set()函数: set2 = set([4, 5, 6]) ,可将列表、元组等可迭代对象转换为集合。
创建空集合:只能使用 set() 函数,因为 {} 创建的是空字典。
基本操作
添加元素: add() 方法用于添加单个元素, update() 方法可添加多个元素,如 set1.add(4) , set1.update([5, 6]) 。
删除元素: remove() 方法删除指定元素,元素不存在会报错; discard() 方法删除元素,元素不存在也不会报错; pop() 方法随机删除并返回一个元素,集合为空会报错; clear() 方法清空集合。
成员检测:使用 in 关键字检查元素是否在集合中,如 3 in set1 。
集合运算
并集: union() 方法或 | 运算符, set1.union(set2) 或 set1 | set2 。
交集: intersection() 方法或 & 运算符, set1.intersection(set2) 或 set1 & set2 。
差集: difference() 方法或 - 运算符, set1.difference(set2) 或 set1 - set2 。
对称差集: symmetric_difference() 方法或 ^ 运算符, set1.symmetric_difference(set2) 或 set1 ^ set2 。
集合关系判断
子集判断: issubset() 方法, set1.issubset(set2) 判断 set1 是否为 set2 的子集。
超集判断: issuperset() 方法, set1.issuperset(set2) 判断 set1 是否为 set2 的超集。

字典

Python中的字典 (dict) 是可迭代的、通过键 (key)来访问元素的可变的容器类型的数据。
字典由两部分视图构成: 键视图 值视图 。键视图不能包含重复的元素,值视图能。在键视图中,键和值是成对出现的。

字典的创建

使用花括号:可以通过花括号  { }  直接创建字典,键值对之间用冒号  :  分隔,不同键值对之间用逗号  ,  分隔。例如  dict1 = {'name': 'John', 'age': 30, 'city': 'New York'} 。
使用dict()函数:使用  dict()  函数并传入可迭代对象来创建字典。例如  dict2 = dict([('name', 'Alice'), ('age', 25)]) ,还可以通过关键字参数的形式创建  dict3 = dict(name='Bob', age=35) 

 字典的基本操作

访问元素:通过键来访问对应的值,例如  print(dict1['name'])  会输出  John 。如果键不存在,会引发  KeyError  异常,可以使用  get()  方法来避免,如  dict1.get('gender', '未设置') ,当键不存在时返回默认值未设置 。
添加和修改元素:可以通过赋值语句添加或修改键值对。若键不存在则添加新键值对,若键已存在则修改对应的值。例如  dict1['gender'] = 'Male'  添加新键值对, dict1['age'] = 31  修改已有键的值。
删除元素:使用  del  语句删除指定键值对,如  del dict1['city'] 。 pop()  方法也可删除指定键值对并返回对应的值,如  dict1.pop('age') 。

字典的常用方法

keys():返回一个包含字典所有键的可迭代对象,可使用  list()  函数将其转换为列表,如  list(dict1.keys()) 。
 values():返回包含字典所有值的可迭代对象,类似地, list(dict1.values())  可得到值的列表。
 items():返回包含所有键值对的可迭代对象,每个键值对以元组形式呈现,如  list(dict1.items())  得到  [('name', 'John'), ('gender', 'Male')] 。
 update():用于将另一个字典的键值对更新到当前字典中,如果键已存在则更新值,不存在则添加新键值对。例如  dict2 = {'age': 32, 'country': 'USA'} , dict1.update(dict2) 。


http://www.kler.cn/a/522067.html

相关文章:

  • 【Go语言圣经】第五节:函数
  • PyTorch API 详细中文文档,基于PyTorch2.5
  • 护眼好帮手:Windows显示器调节工具
  • [权限提升] Windows 提权 — 系统内核溢出漏洞提权
  • 记忆力训练day07
  • BOM对象location与数组操作结合——查询串提取案例
  • Linux 常用命令 - sort 【对文件内容进行排序】
  • (1)SpringBoot入门+彩蛋
  • JavaSE第十一天——集合框架Collection
  • java —— 面向对象(下)
  • 【数据结构】(2)时间、空间复杂度
  • 学习yosys(一款开源综合器)
  • 一文掌握ADB的安装及使用
  • 【全栈】SprintBoot+vue3迷你商城(9)
  • 线程配置经验
  • 一元函数微积分的几何应用:二维平面光滑曲线的曲率公式
  • 苍穹外卖 项目记录 day09 历史订单
  • arkui-x 前端布局编码模板
  • 详解Redis之事务
  • 深度解析:MyBatis-Plus实现分页查询的封装!
  • Meta 计划 2025 年投资 650 亿美元推动 AI 发展
  • mysql DDL可重入讨论
  • 面试题-Java集合框架
  • 【C++高并发服务器WebServer】-9:多线程开发
  • 图形编辑器基于Paper.js教程22:在图形矢量编辑器中,实现两个元素的差集,交集,并集,切割
  • 若依基本使用及改造记录