list
Python内置的数据类型是列表:list。其是一种有序的集合,可以随时删除添加其中的元素。比如:
1. 如何获取元素个数
变量classmates
就是一个list,用len()
可以获得list元素个数
2. 访问list中每个位置的元素。
list_name[n]
#访问第n+1个元素,索引从0开始,和C中数组一样,访问过界会报错,n也可以为负整数,list_name[-1]
表示最后一个元素,以此类催。
3. 插入元素
图中可以看出,使用append()
可以在list尾部添加新元素。如何在固定位置添加新元素呢
使用insert()
可以在指定位置插入元素,其后元素依次往后。
4. 删除指定位置元素
用pop()
,当删除list末尾元素时,直接使用list_name.pop()
就可以,而删除指定位置的元素,使用list_name.pop(n)
删除。
5. 替换元素
替换元素可直接使用list_name[n]=xxx
注意: list中每个元素的类型可以不一样
list中元素也可以是list类型
tuple
有序列表:元组。和list不同的在于,tuple一旦初始化就不能修改。表达形式为:
name=('lama','Lama','LAMA')
其结果为:
1. 定义空tuple
t=()
2. 定义一个元素
注意:当定义一个元素时,需要在其后加上一个,
否则将其看成是赋值操作
3. 当tuple包含list时
由于tuple是不可变的,但是list是可变的,tuple不变,指的是其指向的元素指针不变,所以其指向的list不可变,但是list中的元素可变。
dict
Python内置了字典dict的支持,使用键-值(key-value)存储,具有极快的查找速度。
格式如下:
原理:首先在字典的索引表中查找这个字对应的页码,然后到该页。找到该字。
1. 放入value
2. 判断key是否存在
1. 使用in
判断
2. 使用dict提供的get()
方法,如果key不存在,返回None
或者自己指定的value:
当存在对应的key时,返回其对应的value值,若不存在则返回-1,或者指定值。
注意:返回None时,交互环境不显示结果
3. 删除key
要删除一个key
,则对应的value
也会被删除。
使用pop()
删除对应key
注意:dict内部存放的顺序和key放入的顺序是无关的。
注意:dict的key必须是不可变对象 ,所以list不可能成为dict的key值
和list相比,dict的特点有:
1. 查找插入的速度极快,不会随着key的增加而变慢
2. 需要占用大量的内存,内存浪费多
所以dict是一种以空间换时间的方法。
set
set和dict类似,也是一组key的集合,但不存储value值,由于key不能重复,所以set中,没有重复的key。
要创建一个set,需要提供一个list作为一个输入集合
传入的参数['lama','Lama','LAMA']
是一个list,显示的{'lama','Lama','LAMA'}
只是告诉你set内部有这三个元素,显示的顺序也不表示set是有序的。重复元素在set中自动被过滤。
1. 添加元素
使用add(key)
添加元素到set中,可以重复添加,但是没有效果。
2. 删除元素
使用remove()
方法删除元素
set可以做数学意义上的交集并集等操作。