容器(container、collection)
:存储大量数据的一种数据类型
1、为什么使用容器
:容器是用来存储和组织其他对象的对象。也就是说容器里面可以放很多东西,这些东西可以是字符串,可以是整数,可以是自定义类型,然后把这些东西有组织的存放在内存中。
2、python中提供了哪些容器?
list 列表
python的列表的特点:
1,具有可伸缩性,可以随时添加和删除元素
2,可以很方便的取元素
3,列表元素可以是不同类型
列表的常见方法:
listing=[1,25,66,25,1,66,"list","刘帅哥","list","刘帅哥"]
listing.append("hehe")
print(listing)
|
– append(元素) # 在列表尾部追加一个元素
|-- insert(索引位置, 元素) # 在特定的位置,添加元素
listing.insert(2,"lala")
print(listing)
|-- clear() # 清除列表
listing.clear()
print(listing)
|-- count(element) # 统计元素出现的次数
listing.count("list")
print(listing.count("list"))
|-- index(element) # 查询元素首次出现索引,如果不存在,则抛出异常
|-- remove(element) # 通过元素移除对应的元素
|-- pop([index]) # 默认删除最后一个元素,如果指定了位置,则删除对应位置的元素
|-- reverse() # 翻转列表顺序
|-- copy() # 浅拷贝对象(堆对象的复制)
|-- extend(可迭代对象) # 合并列表
|-- sort() # 排序
多维列表:
[[],[],[],[],[]]
ls=[[1,2,3],[4,5,6],['liu','yong','jie'],["拉拉"],['哈哈']]
print(ls)
set 集合
1、集合的特点:
1)一个容器,集合的元素不重复。2)是无序的hash表。3)集合的操作:并集,交集,差集。4)集合判断:是否是子集,是否有交集
2、怎样定义set集合
s = {元素1, 元素2…}
s = set()
s = set({元素1, 元素2…})
s = set([元素1, 元素2…]) # 将list转换为set对象
ls = list({元素1, 元素2…}) # 将set转换为list对象
|-- add(元素) # 添加
|-- clear
|-- copy
|-- remove # 通过元素本身移除,如果元素不存在,则抛出异常
|-- discard # 通过元素本身移除,如果元素不存在,则什么都不做
|-- pop() # 随机移除元素
|-- intersection # 交集
|-- union # 并集
|-- difference # 差集
|-- update # 合并集合
tuple 元组
元组是一种不可变的数据类型。
元组中的元素不允许被修改和改变。
元组的定义:
t = () # 定义元组,但是不推荐这么使用,因为元组不可变
t = (“春”, “夏”, “秋”, “冬”) # 建议定义时初始化值
t = tuple(()) #
注意:三种容器都可以使用对应的函数完成转换
常见方法:
|-- count # 统计元素个数
|-- index # 查询元素所在的索引
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() #
|-- value()
|-- setdefault() # 新增key和value
|-- update
|-- popitem # Pairs are returned in LIFO (last-in, first-out) order
|-- pop(key) # 通过key,删除key对应的键值对
注意:t = (10)和t = (55,)区别