Python容器

什么是容器

容器就是一种数据类型,复合数据,存储多个变量
对象都是存储在堆中的

容器(collection)
|-- list 列表 底层是基于双向链表实现的
|-- set 集合 无序,不重复 hash
|-- tuple 元组
|-- dict 字典

list 列表

线性表的实现:数组(array)、链表(list)、栈(stack)、队列(queue)
python中没有数组
列表的定义

 	1、借助若数据类型语言的特点:直接赋值
 		 ls = [1, 2, 3]
		  type(ls) # list
	 2、全局函数list
 		 ls = list() # 使用全局函数完成
		  ls = list([1, 3,4,5,5])

列表的元素

	 |-- element 容器的存储的值
		 列表中元素如何访问或者修改
 		 可以利用下标来访问元素或者修改元素
		  ls[小标] 小标从0
		  ls[2] # 访问下标为2的也就是第三个值
		  ls[3] = 200 # 将第四个值修改为200
	 |-- 获取list中元素的个数
		  len的全局函数 
		  len(ls)  # 获取元素的个数

列表的遍历
for循环
while循环,需要一个索引,从0开始

列表的常见方法

['append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
	 |-- append(元素) # 将元素追加到list的末尾位置
	 |-- clear()  # 清空列表
	 |-- copy()  # 复制对象(浅拷贝对象)
	 |-- count()  # 统计元素在列表中出现的次数
	 |-- extend()  # 将一个列表合并到另外一个列表中
 	 |-- index()  # 查找元素在列表中的第一个索引位置,如果不存在,则抛出异常
	 |-- insert(index, item) # 插入元素,第一个参数是位置
	 |-- pop([index]) # 根据索引移除元素,如果没有索引,默认移除最后一个
	 |-- remove(元素) # 根据值移除元素
	 |-- reverse  # 翻转元素的顺序
	 |-- sort  # 排序,只能同类型比较 如果值字符串,是按照ASCII表比较的

集合

Set:无序的、不能重复的 hash算法
定义集合
s = {必须有元素}
s = set() # 全局函数
注意:set无序,所以没有下标
常见方法

 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
	 |-- pop  # 随机移除元素
	 |-- remove # 
	 |-- discard # 尝试着移除元素
	 |-- intersection 交集
	 |-- difference  差集
	 |-- union  并集

元组

()包裹的,特点是固定,不能发生变化的,是不可变类型,有序的
定义 t = (1,3,4,45,5)
tt = tuple((1,3,4,45,5))

通过下标访问元素 
	 |-- count()
	 |-- index()
 注意:元组是不可变类型,也就意味着一点元组创建,元素的个数、值都将固定,不能修改、删除等操作
 如果子元素是可变类型,那就可以改变着个子元素。

字典

字典是一种键值对形式存储的数据结构
键是唯一的,在python中键只能字符串类型

**定义:**
  d = {"name": "小明", "age": 16, "address": "xian" }
  dict({"name": "小明", "age": 16, "address": "xian" })
  
访问值,通过key来访问value
  d["name"]

常见方法

 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop',
 'popitem', 'setdefault', 'update', 'values']
	 |-- clear
	 |-- copy
	 |-- get
	 |-- keys()
	 |-- values()
	 |-- items()
	 |-- pop(key)  # 通过key,移除对应的键值对
	 |-- popitem  # LIFO的顺序
	 
LIFO:last in first out
FIFO:firt in first out 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值