列表(list)
列表是可变有序列表。列表的长度和内容是可变的,可自由对列表中的数据项进行增加、删除或替换。列表元素类型可以不同。列表用中括号([ ])表示,也可以通过 list() 函数将元组或字符串转化成列表,直接使用 list() 会返回一个空列表。
列表类型常用的函数或方法:
函数或方法|描述 -|- list[i] = x|替换列表 list 第 i 项数据为 x list[i: j] = lt|用列表 lt 替换列表 list 第 i 项到第 j-1 项数据 list[i: j: k] = lt|用列表替换列表 list 第 i 项到第 j-1 项以 k 为步长的数据 del list[i: j]|删除列表 list 第 i 项到第 j-1 项数据 del list[i: j: k]|删除列表 list 第 i 项到第 j-1 项以 k 为步长的数据 list += lt 或 list.extend(lt)|将列表 lt 添加到列表 list list * n|更新列表 list,其元素重复 n 次 list.append(x)|在列表 list 最后添加元素 x list.clear()|删除列表 list 的所有元素 list.copy()|复制列表 list list.count(x)|返回元素 x 在列表 list 中出现的次数 list.insert(i, x)|在列表 list 的第 i 位置插入元素 x list.pop([i])|将列表 list 的第 i 项元素取出,并删除该元素,默认最后一个元素 list.remove(x)|将列表 list 出现的第一个元素 x 删除 list.reverse()|将列表 list 的元素反转 list.sort([reverse=True])|对列表进行降序排序,默认为升序排序
2 元组(tuple)
与列表不同的是,元组属于不可变序列。元组一旦被创建,用任何方法都不可以修改其元素值。元组的定义形式与列表类似,区别在于元组使用小括号表示(( )),也可以使用 tuple() 将列表或字符串转化成元组。对元组而言,只能使用 del 命令删除整个元组对象,而不能只删除元组中的部分元素,因为元组属于不可变序列。
3 集合(set)
集合是无序可变序列,没有索引和位置,集合中的元素不可重复。集合的打印效果和定义的顺序并不一定一致。集合使用大括号({ })表示,也可以使用 set() 将任何组合数据类型转化成一个无重复且排序任意的集合。
3.1 集合类型的操作符:
操作符|描述 -|- S & T 或 S.intersection(T)|交集 S &= T 或 S.intersection_update(T)|计算集合 S 和集合 T 的交集并更新到集合 S S | T 或 S.union(T)|并集 S |= T 或 S.update(T)|计算集合 S 和集合 T 的并集并更新到集合 S S T 或 S.symmetric_difference(T)|补集 S = T 或 S.symmetric_difference_update(T)|计算集合 S 和集合 T 的补集并更新到集合 S S - T 或 S.difference(T)|差集 S -= T 或 S.difference_update(T)|计算集合 S 和集合 T 的差集并更新到集合 S S <= T 或 S.issubset(T)|如果集合 S 和集合 T 相同或 S 是 T的子集,返回 True,否则返回 False S >= T 或 S.issubset(T)|如果集合 S 和集合 T 相同或 S 是 T的超集,返回 True,否则返回 False
3.2 集合类型的操作函数或方法:
操作函数或方法|描述 -|- S.add(x)|把元素 x 增加到集合 S S.clear()|清空集合 S S.copy()|复制集合 S S.pop|随机返回集合 S 的一个元素,并删除该元素 S.discard(x)|如果 x 在集合 S 中,移除该元素,不在则不报错 S.remove(x)|如果 x 在集合 S 中,移除该元素,不在则报KeyError错 S.isdisjoint(T)|如果集合 S 和集合 T 没有相同元素,则返回 True
4 字典(dict)
字典是“键-值”的无序可变序列。字典中的“键”可以是 Python 中任意不可变数据,例如数字、字符串和元组等,但不能使用列表、集合和字典等,因为这些类型的对象是可变的。另外,字典中的“键”不允许重复,而“值”是可以重复的。可以使用 dict() 函数创建字典。定义如下:
d = {"键1": "值1", "键2": "值2"}
字典类型和函数和方法:
函数或方法|描述 -|- d.keys()|返回所有键 d.values()|返回所有值 d.items()|返回所有键值对 d.get(key, default)|键存在则返回相应值,否则返回默认值 d.pop(key, default)|键存在则返回相应值,同时删除键值对,否则返回默认值 d.popitem()|随机返回一个键值对,以元组形式返回(key, value),同时删除键值对 d.clear()|清空字典所有键值对 del d[key]|删除字典某一键值对