Python中的序列(列表,元组,字典,集合)
Python中的序列(列表,元组,字典,集合)
一、序列的一些通用操作
1、索引
2、切片
切片操作是访问序列中元素的另一种方法,它可以访问一定范围内的元素。通过切片操作可以产生一个新的序列。
sname[start : end : step]
# sname:表示序列的名称。
# start:表示切片的开始位置(包括该位置),如果不指定,则默认为0。
# end:表示切片的截止位置(不包括该位置),如果不指定,则默认为序列的长度。
# step:表示切片的步长,如果省略,则默认为1,当省略该步长时,最后一个冒号也可以省略。
3、序列相加
4、序列乘法
emptyList = [None]*5
5、序列中常用的函数
函数 | 作用 |
---|---|
in关键字 | 检查某个元素是否包含在某个序列中 |
len() | 计算序列的长度 |
max() | 返回序列中的最大元素 |
min() | 返回序列中的最小元素 |
list() | 将序列转化为列表 |
tuple() | 将序列转化为元组 |
set() | 将列表、元组等可迭代对象转换为集合 |
str() | 将序列转化为字符串 |
sum() | 计算序列元素的和 |
sorted() | 对元素进行排序 |
reversed() | 反向序列中的元素 |
enumerate() | 将序列组合为一个索引序列,多用在 for 循环中 |
type() | 测试变量的类型 |
二、列表(List)
1、遍历列表
for item in listname:
# 输出item
# 或者
for index, item in enumerate(listname):
# 输出index和item
2、列表的常用函数
函数 | 功能 |
---|---|
append() | 在列表的末尾追加元素 |
insert() | 向列表的指定位置插入元素 |
extend() | 将一个列表中的全部元素添加到另一个列表中 |
remove() | 根据元素值删除列表中的元素,首先判断该元素是否存在 |
count() | 获取指定元素出现的次数 |
index() | 获取指定元素首次出现的下标 |
sort()
方法用于对原列表中的元素进行排序。排序后原列表中的元素顺序将发生改变。listname.sort(key=None, reverse=False)
sorted(iterable, key=None, reverse=False)
# listname和iterable:表示要进行排序的列表
# key:用于指定排序规则(例如,设置 key=str.lower,表示在排序时不区分字母大小写)
# reverse:可选参数,如果将其值设置为 True,则表示降序排列;如果为 False,则表示升序排列,默认为升序排列。
3、列表推导式
(1)生产指定范围的数值列表
list = [Expression for var in range]
# Expression:表达式,用于计算新列表的元素
# var:循环变量
# range:采用range()函数生产的range对象。
(2)根据列表生产指定需求的列表
newlist = [Expression for var in list]
# Expression:表达式,用于计算新列表的元素
# var:变量,值为后面列表的每个元素值
# list:用于生产新列表的原列表
# condition:条件表达式,用于指定筛选条件
三、元组(tuple)
tuple1 = 12, 13, 16
verse1 = 12,
四、字典(dictionary)
1、字典的创建
# 创建一个空的字典
dictionary = {}
# 或者
dictionary = dict()
dictionary = dict(zip(list1, list2))
dictionary = dict(key1=value1, key2=value2, ..., key3=value3)
# Python还可以用dict对象的fromkeys()方法创建值为空的字典
dictionary =dict.fromkeys(list_name)
zip()函数
:用于将多个列表或者元组对应位置的元素组合为元组,并返回包含这些内容的zip对象。如果想要获取元组,可以将zip对象使用tuple()函数转化为元组;如果想要获取列表,则可以使用list()函数将其转换为列表。2、遍历字典
for item in dictionary.items():
print item
for key, value in dictionary.items():
print("{}-{}".format(key, value))
values()
方法和keys()
方法,用于返回字典的 “值” 和 “键” 列表,它们的使用方法同 items()
方法类似,也需要通过 for 循环遍历该字典列表,获取对应的值和键。3、字典推导式
randomdict = {i:random.randint(10, 100) for i in range(1, 5)}
五、集合(set,无序可变集合)
1、set的常用函数
函数 | 功能 |
---|---|
add() | 向集合中添加一个元素 |
pop() | 随机移除一个元素 |
remove() | 移除一个指定的元素,如果元素不存在抛出异常 |
clear() | 清空集合 |
2、 集合的交集、并集和差集运算
六、list、tuple、dictionary、set的区别
数据结构 | 是否可变 | 是否重复 | 是否有序 | 定义符号 |
---|---|---|---|---|
list | 可变 | 可重复 | 有序 | [] |
tuple | 不可变 | 可重复 | 有序 | {} |
dictionary | 可变 | 可重复 | 无序 | {key:value} |
set | 可变 | 不可重复 | 无序 | {} |
作者:小宝945