> 文档中心 > Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

目录

  • 集合中的交集、并集与差集特性
  • 数据序列中的公共方法
    • 第一部分
    • 第二部分
    • 序列类型之间的相互转换
      • list():把某个序列类型的数据转化为列表
      • tuple():把某个序列类型的数据转化为元组
      • set():将某个序列转换成集合(集合可以快速完成列表去重并且不支持下标)
  • 列表集合字典推导式
    • 列表推导式
    • 字典推导式
    • 集合推导式

集合中的交集、并集与差集特性

s1 = {1, 2, 3}s2 = {1, 4, 5}print(s1 & s2)print(s1 | s2)print(s1 - s2)print(s2 - s1)

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

数据序列中的公共方法

所谓的公共方法就是支持大部分数据序列。

第一部分

运算符 描述 支持的容器类型
+ 合并 字符串、列表、元组
* 复制 字符串、列表、元组
in 元素是否存在 字符串、列表、元组、字典
not in 元素是否不存在 字符串、列表、元组、字典

演示:

l1 = [1, 2, 3]l2 = [4, 5, 3]print(l1 + l2)s1 = "123"s2 = "456"print(s1 + s2)t1 = (1, 2, 3)t2 = (4, 5, 6)print(t1 + t2)

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

print('-' * 10)print([1] * 10)print((10, ) * 10)

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

第二部分

编号 函数 描述
1 len() 计算容器中元素个数
2 del或del() 根据索引下标删除指定元素
3 max() 返回容器中元素最大值
4 min() 返回容器中元素最小值
5 range(start, end, step) 生成从start到end(不包含)的数字,步长为 step,供for循环使用
6 enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

演示:

d1 = {"1": 1, "2": 2, "3": 3}del d1["1"]print(d1)l1 = [1, 2, 3]del l1[1]print(l1)

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

序列类型之间的相互转换

list():把某个序列类型的数据转化为列表

t = (1, 2, 3)print(list(t))s = {1, 2, 3}print(list(s))d = {"3": 1, "2": 2, "1": 3}print(list(d))

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

tuple():把某个序列类型的数据转化为元组

l = [1, 2, 3]print(tuple(l))s = {1, 2, 3}print(tuple(s))

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

set():将某个序列转换成集合(集合可以快速完成列表去重并且不支持下标)

l = [1, 2, 3, 3]print(set(l))t = (1, 2, 3, 3)print(set(t))

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

列表集合字典推导式

推导式comprehensions(又称解析式),是Python的一种独有特性。推导式是可以从一个数据序列构建另一个新的数据序列(一个有规律的列表或控制一个有规律列表)的结构体。 共有三种推导:列表推导式集合推导式字典推导式

列表推导式

变量名 = [表达式 for 变量 in 列表 for 变量 in 列表]变量名 = [表达式 for 变量 in 列表 if 条件]
l1 = [f"{i}--{j}" for i in range(1, 3) for j in range(4, 6)]print(l1)l1_ = []for i in range(1, 3):    for j in range(4, 6): l1_.append(f"{i}--{j}")print(l1_)l2 = [i for i in range(1, 10) if i % 2 == 0]print(l2)l2_ = []for i in range(1, 10):    if i % 2 == 0: l2_.append(i)print(l2_)

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

字典推导式

案例1:创建一个字典:字典key是1-5数字,value是这个数字的2次方。

dict1 = {i:i**2 for i in range(1,6)}print(dict1)

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

案例2:把两个列表合并为一个字典

list1 = ['name', 'age', 'gender']list2 = ['Tom', 20, 'male']person = {list1[i]:list2[i] for i in range(len(list1))}print(person)

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

案例3:提取字典中目标数据

counts = {'MBP': 268, 'HP': 125, 'DELL': 201, 'Lenovo': 199, 'ACER': 99}# 需求:提取上述电脑数量大于等于200的字典数据counts = {key:value for key, value in counts.items() if value >= 200}print(counts)

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式

集合推导式

因为列表推导式的原因,可能大家觉得集合推导式很没有必要。

其实不然。集合推导式的最大的优点就是去重。

l1 = [1, 1, 2]l = [i ** 2 for i in l1]print(l)s = {i ** 2 for i in l1}print(s)

Python模糊基础点--集合中的交集、并集与差集特性、数据序列中的公共方法、列表集合字典推导式