数据容器可以从以下视角进行简单分类:
- 是否支持下标索引
- 支持:列表、元组、字符串 – 序列类型
- 不支持:集合、字典 – 非序列类型
- 是否支持重复元素
- 支持:列表、元组、字符串 – 序列类型
- 不支持:集合、字典 – 非序列类型
- 是否可以修改
- 支持:列表、集合、字典
- 不支持:元组、字符串
通用操作
这5类数据容器都支持for循环遍历。
通用方法
- len():统计元素个数
- max(),min():统计最大、最小元素
- del 或 del():删除
- range(start, end, step):生成从start到end的数字,步长为step,供for循环使用
- enumerate():迭代索引-值对
公共方法:
- +:合并,字符串、列表、元组
- *:复制,字符串、列表、元组
- in/not in:元素是否存在/不存在,字符串、列表、元组、字典
通用转换功能
- list(容器):转换为列表
- str(容器):转换为字符串
- tuple(容器):转换为元组
- set(容器):转换为集合
通用排序功能
sorted(容器, reverse=True)将给定容器进行排序,reverse=True表示降序。
元组
具名元组
具名元组(namedtuple)是一种特殊的元组。在保留普通元组功能的基础上,允许为元组的每个成员命名,这样便能通过名称而不止是数字索引来访问成员。
创建具名元组需要用到namedtuple()函数,它位于标准库的collections模块里,使用前需先导入:
from collections import namedtuple Rectangle = namedtuple("Rectangle", "width,height") # 还可用空格分隔:'width height',或字符串列表:['width', 'height'] rect = Rectangle(10, 20) print(rect.width) # 10
在Python 3.6版本以后,还可以用typing.NamedTuple和类型注解语法来定义具名元组类型。这种方式在可读性上更胜一筹:
from typing import NamedTuple class Rectangle(NamedTuple): width: int height: int rect = Rectangle(100, 200) print(rect.width) # 100
- 转载请保留原文链接:Python数据容器分类 https://aboss.top/post/586/
- 本站所有资源文章出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。
- 本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户擦亮眼睛自行鉴别,做一个有主见和判断力的用户。
- 本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。
- 联系方式(#替换成@):mail#aboss.top
评论