容器解析

3 篇文章 0 订阅

Python—容器

容器(container、collection)

存储大量数据的一种数据类型

1、为什么使用容器

一个容器包含了完整的运行时环境:除了应用程序本身之外,这个应用所需的全部依赖、类库、其他二进制文件、配置文件等,都统一被打入了一个称为容器镜像的包中。

2、python中提供了哪些容器?

list——列表
set——集合
tuple——元组
dict——字典

列表:
python提供的列表这种容器,是一种线性结构的存储空间
数组:内存中一块连续的内存空间
优点:查询速度,通过索引迅速检索对应的值
缺点:增删改的效率较低
链表:不是连续内存
优点:增删改的效率相对于数组较高
缺点:查询速度慢
python中的列表容器就是基于双向链表结构设计的(java中LinkedList)

列表的定义:
列表是Python中最基本的数据结构
列表中的每个元素都分配一个位置,一个元素对应一个位置
第一个索引是0,第二个索引是1,依此类推
弱数据类型语言的特点:
1、 ls = []
2、 ls2 = list()
3、 list3 = list([1,2,3,4,5,6,7]) # list3 =[1,2,34,4,5,6]

访问list的元素(element)通过下标访问,注意:从0开始
也可以通过下标修改元素的值
也可以修改元素的值

遍历list:
for i in list:

list的常见方法:
[‘append’, ‘clear’, ‘copy’, ‘count’, ‘extend’, ‘index’, ‘insert’, ‘pop’, ‘remove’, ‘reverse’, ‘sort’]
|-- append(元素) ——在列表尾部追加一个元素
|-- insert(索引位置, 元素) ——在特定的位置,添加元素
|-- clear() ——清除列表
|-- count(element) —— 统计元素出现的次数
|-- index(element) —— 查询元素首次出现索引,如果不存在,则抛出异常
|-- remove(element) —— 通过元素移除对应的元素
|-- pop([index]) —— 默认删除最后一个元素,如果指定了位置,则删除对应位置的元素
|-- reverse() —— 翻转列表顺序
|-- copy() —— 浅拷贝对象(堆对象的复制)
|-- extend(可迭代对象) —— 合并列表
|-- sort() —— 排序
在这里插入图片描述

Set(集合):

也是python提供的一种容器,特点:无序、元素不能重复

1、怎么定义set集合

s = {元素1, 元素2…}
s = set()
s = set({元素1, 元素2…})
s = set([元素1, 元素2…]) # 将list转换为set对象
ls = list({元素1, 元素2…}) # 将set转换为list对象

2、通过官方提供的方法来操作

[‘add’, ‘clear’, ‘copy’, ‘difference’, ‘difference_update’, ‘discard’,
‘intersection’, ‘intersection_update’, ‘isdisjoint’, ‘issubset’,
‘issuperset’, ‘pop’, ‘remove’, ‘symmetric_difference’,
‘symmetric_difference_update’, ‘union’, ‘update’]

|-- add(元素) —— 添加
|-- clear——清除列表
|-- copy——复制列表
|-- remove —— 通过元素本身移除,如果元素不存在,则抛出异常
|-- discard —— 通过元素本身移除,如果元素不存在,则什么都不做
|-- pop() —— 随机移除元素
|-- intersection —— 交集
|-- union —— 并集
|-- difference —— 差集
|-- update —— 合并集合
在这里插入图片描述

元组(tuple):

元组是一种不可变的数据类型。
元组中的元素不允许被修改和改变。

元组的定义:

Python的元组与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号,列表使用方括号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

t = () ——定义元组,但是不推荐这么使用,因为元组不可变
t = (“春”, “夏”, “秋”, “冬”) ——建议定义时初始化值
t = tuple(())——查看数据类型
注意:三种容器都可以使用对应的函数完成转换
在这里插入图片描述

字典(dict):

dictionary,是一种使用key-value键值对的结构存储数据的
python中key不能重复,否则会覆盖数据
key的类型只能是字符串,value类型任意

如何访问字典值:
使用字典中的key获取key对应的值
d[“name”] —— 获取name对应的值,如果该key不存在,则抛出异常
d.get(“age”) —— 也可以使用get方法,如果key不存在,则返回None

字典的常用方法:
‘clear’, ‘copy’, ‘fromkeys’, ‘get’, ‘items’, ‘keys’, ‘pop’, ‘popitem’, ‘setdefault’, ‘update’, ‘values’]

|-- clear——清除列表
|-- copy——复制列表
|-- fromkeys() ——将其他可迭代对象转换为字典
|-- get——显示列表
|-- items() ——迭代出每一个键值对[(),()]
|-- keys() ——列表的key
|-- value()——列表的值
|-- setdefault() ——新增key和value
|-- popitem —— Pairs are returned in LIFO (last-in, first-out) order
|-- pop(key) —— 通过key,删除key对应的键值对
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

China_LYC

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值