一、了解容器
Python中,可包含其他对象的对象,称之为“容器”。 容器是一种数据结构。 常用的容器主要划分为两种:序列(如:列表、元祖等)和映射(如:字典)。 序列中,每个元素都有下标,它们是有序的。 映射中,每个元素都有名称(又称“ 键 ”),它们是无序的。 除了序列和映射之外,还有一种需要注意的容器——“ 集合 ”。 有 5 种操作是所有序列中通用的。 所谓“索引”,就是在序列中,根据所需元素的下标,返回所需元素。 以字符串的索引为例: ‘ 2 ’为第三个元素的下标。 当然,为了节省时间,我们大可不必为了索引而引入一个变量。 我们可以直接在字符串上索引。 直接在我们的目标序列后面加个索引所需的中括号就可以了。 不仅如此,我们还可以在input函数上对用户输入的内容直接索引。
1.python的容器
1)list 列表
2)set 集合
3)tuple 元组
4)dict 字典
其中数字、字符串和元组是不可变的,而字典和列表是可变的。
1. list 列表:
如图就是list的使用:
访问列表中的元素时需要注意下标(下标从0开始)
在list容器中的常用方法
append #向列表尾部追加元素
insert #向列表中指定位置插入元素
clear #清除列表中的元素(慎用)
copy #浅拷贝对象,是在堆内存中进行对象拷贝的
count #统计某个元素的个数
extend #合并列表
index #查找某元素第一次在列表中出现的位置,如果没有这个元素,则抛出异常
pop #删除最后一个元素并返回该元素
sort #对元素进行排序,注意一般对列表元素为数字的进行排序,若元素即包含字符串类型又包含int类型会抛出错误
remove #移除某个元素,若元素不存在则抛出错误
reverse #将列表元素顺序翻转
2.set 集合
创建一个集合s={},需要注意的是{}中最起码要有一个元素才算一个集合
set集合主要有以下特点:
1.无序性
2.不能重复的
3.底层使用hash表(哈希表)的结构设计的,遍历只能使用for循环遍历,不能使用while循环遍历
集合的常用方法:
add # 增加元素(无序的)
difference # 差集
intersection # 交集
union # 并集
update # 更新集合,合并集合
discard # 移除元素,但是如果不存在,则不做任何操作
remove #通过元素本身将元素移除列表,如果不存在会抛出错误
copy # 复制、拷贝对象
clear #清除元素
3.tuple元组
利用弱数据类型做出tuple元组,tuple元组有以下特点:
1. 元组是有序的,可以通过下标来找到相对应的元素
2. 元组是一个不可变了类型,元组的元素一旦定义下来,则无法改变,但是若元组内部元素是可变类型,那么该元组就可变
注意:若想要定义只有一个元素的元组,必须在元素后面加上逗号,否则类型为整型
tuple的常用方法:
count #统计某元素个数
index #查找元素在列表中的位置
注意:如果元素不存在,则抛出异常,如果该元素存在多个,则返回第一个
4.dict字典
1. 字典的定义
键值对形式存储的,必须成对出现,不能只出现键(key)或者只出现值(values)
d = {key:values,…}
d = {“name”: “liujianhong”, “age”: 16, “gender”: “男”}
d = dict() #全局函数
字典常用方法:
get # 和字典对象[key]类似,获取键对应值,注意,如果没有该键,返回None
keys # 返回所有的键
values # 返回所有的值
items # 返回一个键值对
pop(key) # 通过key删除键值对,若不存在则抛出错误
popitem # 移除一个键值对,移除的规则是LIFO(last in first out)–后进先出
copy #复制拷贝
clear #清除元素
全局函数:
print()
input()
type()
range()
list()
len()
exit()
help() #调用帮助问题
dir() #查询对象的所有属性或者方法