python 容器篇(简)

python中有4种容器:

list,tuple,set,dictionary

1.list

特点:

  • 一组有序的项目集合,可变的数据类型,可增删改查。

  • 列表围绕方括号[]进行数据集合,不同成员以,分隔。

  • 列表可以包含任何数据类型或另一个列表,不需要相同的类型。

  • 列表可以通过序号访问成员。

特征:

中括号包裹,逗号隔开元素,元素类型任意,可以嵌套,可以用 index 进行读写

注意:

  • 使用方括号[]存放数据元素
  • 第一个元素的索引是0,也就是索引从0开始
  • len函数可以计算列表的长度(多少个索引)
  • 可以将列表想象成SQL中的表,具有增删查改这四种操作

2.tuple

特点:

  • 有序的
  • 每个元素不可以被更改,不可以增加,不可以删除
  • 元组每个元素可以是任何数据类型

特征:

小括号包裹,逗号隔开元素,元素类型必须统一,可以嵌套但是满足类型统一,可以用 index 进行读,但不可写,更不可增删

注意:

  • Tuple 里面的元素不支持复制修改
  • Tuple 可以切片,也可以拼接
  • Tuple 里面的元素如果是list或dict这些可以修改的值,那这些值里面的内容可以修改
  • Tuple 中只有单个元素时要加逗号

常用方法:

count
index

3.set

特点:

  • 确定性:集合中的元素必须是确定的;

  • 互异性:集合中的元素互不相同,如:集合A={1,a},则a不能等于1)

  • 无序性:集合中的元素没有先后之分,如:{3,4,5}和{3,5,4}算作同一个集合

特征:

大括号包裹,逗号隔开元素,元素类型任意,可以嵌套,可以用index读写。基本和List一致

注意:

set没有办法使用while 遍历数据,只能使用for循环
set的元素无法通过下标访问

常用方法:

|-- add(ele) # 添加元素
|-- clear() # 清空列表
|-- copy() # 浅拷贝
|-- difference(set) # 差集
|-- intersection(set) # 交集
|-- union(set) # 并集
|-- update(set) # 合并两个集合
|-- discard(ele) # 移除元素,如果该元素不存在,则什么都不做
|-- remove(ele) # 移除元素,如果该元素不存在,则抛出异常
|-- pop() # 描述 pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

4.dictionary

特点:

  • dict中的每一个元素都是k:v格式的(键值对格式)
  • dict不支持使用index获取元素,只能通过key获取value
  • dict的key不能重复,是唯一的,不可修改,key的类型必须是不可变对象(即基本数据类型和 tuple)
  • 如果字典中包含相同key的键值对,那么value值会发生覆盖
  • dict中value的类型可以是任意的,可以重复,可以修改
  • dict中,会将True和1,False和0视作相同的key值
    查询速度不会随着元素的增多而变慢

特征:

大括号包裹,逗号隔开元素,元素构成必须统一格式(由分号分隔的两部分,前半部分必须是字符串,后半部分任意),key一定是字符串,如果发现某个元素没包含冒号,则会被当做Set处理,又因为有些元素包含分号,而Set允许元素中出现冒号(字符串中的不算),所以此时会报错

常用方法:

|-- clear() # 用于删除字典内所有元素
|-- copy() #返回一个字典的浅复制
|-- get(key, [defaul])
|-- setdefault() # 返回指定 key 对应的 value,如果该键值对不存在,则先为该 key 设置默认的 value,然后再返回该 key 对应的 value
|-- keys() # 获取所有的键
|-- values() # 以列表返回字典中的所有值
|-- items() # 返回一个字典的拷贝列表
|-- pop(key) # 通过key,删除键值对
|-- popitem() # 随机返回并删除字典中的最后一对键和值
|-- update() # 合并字典 等价于 {**对象, **对象}
|-- fromkeys(iterable) # 生成一个新的字典对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值