0. 前言

英文名

  • frozenset()

元素要求

  • 必须是可哈希的

使用限制

  • 有点像元组,不能随意增减自身的元素
  • 要表示集合集,内部集合必须是冻结集合对象

返回

  • 返回一个新的 set 或 frozenset 对象
  • 如果不提供任何参数,则返回新的空集

方法数量

  • 除去魔法方法,Python3.7 中 frozenset() 有 8 个内置方法

1. 如何查看 frozenset() 的内置方法

# 1.1
dir(frozenset) # 1.2
dir(frozenset()) # 2.1
help(frozenset) # 2.2
help(frozenset())

2. 少废话,上例子

2.1 copy()

  • 释义:返回一个浅拷贝
  • 示例
# 例 1
f1_1 = frozenset({1, 2, 3, 4, 5}) # 定义一个冰冻集合
f1_2 = f1_1.copy() print("f1_1 =", f1_1)
print("f1_2 =", f1_2) print("id(f1_1) =", f1_1)
print("id(f1_2) =", f1_2) print("type(f1_1) =", type(f1_1))
print("type(f1_2) =", type(f1_2))

>>>

f1_1 = frozenset({1, 2, 3, 4, 5})
f1_2 = frozenset({1, 2, 3, 4, 5})
id(f1_1) = 1712784397480
id(f1_2) = 1712784397480
type(f1_1) = <class 'frozenset'>
type(f1_2) = <class 'frozenset'>

2.2 difference()

  • 释义

    • 将两个或更多集合的差异作为新集合返回
    • 有些像概率论中的 A-B
  • 示例
# 例 2
f2_1 = frozenset({1, 2, 3, 4, 5})
f2_2 = frozenset({1, 2, 3, 4, 5})
f2_3 = frozenset({1, 2, 3})
f2_4 = {1, 3, 5, 7, 9} print(f2_1.difference(f2_2))
print(f2_1.difference(f2_3))
print(f2_3.difference(f2_1))
print(f2_1.difference(f2_4))

>>>

frozenset()
frozenset({4, 5})
frozenset()
frozenset({2, 4})

2.3 intersection()

  • 释义

    • 将两个集合的交集作为新集合返回
    • 有些像概率论中的 A∩B
  • 示例
# 例 3
f3_1 = frozenset({1, 2, 3, 4, 5})
f3_2 = frozenset({6, 7, 8, 9, 0})
f3_3 = frozenset({1, 2, 3})
f3_4 = {1, 3, 5, 7, 9} print(f3_1.intersection(f3_2))
print(f3_1.intersection(f3_3))
print(f3_1.intersection(f3_4))

>>>

frozenset()
frozenset({1, 2, 3})
frozenset({1, 3, 5})

2.4 isdisjoint()

  • 释义

    • 如果两个集合的交集为空,则返回 True
    • 否则,返回 False
  • 示例
# 例 4
f4_1 = frozenset({1, 2, 3, 4, 5})
f4_2 = frozenset({6, 7, 8, 9, 0})
f4_3 = frozenset({1, 2, 3}) print(f4_1.isdisjoint(f4_2))
print(f4_1.isdisjoint(f4_3))

>>>

True
False

2.5 issubset()

  • 释义

    • 如果此集合是另一个集合的子集,则返回 True
    • 否则,返回 False
  • 示例
# 例 5
f5_1 = frozenset({1, 2, 3})
f5_2 = frozenset({0, 1, 2, 3, 4})
f5_3 = frozenset({2, 3, 4})
f5_4 = frozenset({4, 5, 6}) print(f5_1.issubset(f5_2))
print(f5_1.issubset(f5_3))
print(f5_1.issubset(f5_4))

>>>

True
False
False

2.6 issuperset()

  • 释义

    • 与 issubset() 相对
    • 如果此集合完全包含另一个集合,则返回 True
    • 否则,返回 False
  • 示例
# 例 6
f6_1 = frozenset({0, 1, 2, 3, 4})
f6_2 = frozenset({1, 2, 3})
f6_3 = frozenset({3, 4, 5})
f6_4 = frozenset({5, 6, 7}) print(f6_1.issuperset(f6_2))
print(f6_1.issuperset(f6_3))
print(f6_1.issuperset(f6_4))

>>>

True
False
False

2.7 symmetric_difference()

  • 释义:将两个集合的“对等差分”作为新集合返回
  • 示例
# 例 7
f7_1 = frozenset({1, 2, 3, 4, 5})
f7_2 = frozenset({1, 2, 3, 4, 5})
f7_3 = frozenset({1, 2, 3})
f7_4 = {1, 3, 5, 7, 9} print(f7_1.symmetric_difference(f7_2))
print(f7_1.symmetric_difference(f7_3))
print(f7_1.symmetric_difference(f7_4))

>>>

frozenset()
frozenset({4, 5})
frozenset({2, 4, 7, 9})
  • difference() 输出的是自身与其它集合的不同之处

  • symmetric_difference() 输出的是两个集合独有部分的并集

2.8 union()

  • 释义:将集合的并集作为新集合返回
  • 示例
# 例 8
f8_1 = frozenset({1, 2, 3, 4, 5})
f8_2 = frozenset({4, 5, 6, 7, 8})
f8_3 = {3, 5, 7, 9} print(f8_1.union(f8_2))
print(f8_1.union(f8_3))

>>>

frozenset({1, 2, 3, 4, 5, 6, 7, 8})
frozenset({1, 2, 3, 4, 5, 7, 9})

[Python3] 015 冰冻集合的内置方法的更多相关文章

  1. day09-2 字典,集合的内置方法

    目录 字典的内置方法 作用 定义方式 方法 优先掌握 需要掌握 存储一个值or多个值 有序or无序 可变or不可变 集合的内置方法 作用 定义方式 方法 存储一个值or多个值 有序or无序 可变or不 ...

  2. day07-列表类型/元组类型/字典类型/集合类型内置方法

    目录 列表类型内置方法 元组类型内置方法 字典类型内置方法 集合类型内置方法 列表类型内置方法 用来存多个元素,[]内用逗号隔开任意数据类型的元素 1. list()强制类型转换 print(list ...

  3. [Python3] 014 集合的内置方法

    目录 1. Python3 中如何查看 set() 的内置方法 2. 少废话,上例子 (1) add() (2) 又见清理大师 clear() (3) 又见拷贝君 copy() (4) 找茬君 dif ...

  4. Python3 常用的几个内置方法

    目录 max()/min() filter() 过滤 map() 映射 sorted筛选 reduce()减少 max()/min() 传入一个参数 (可迭代对象), 返回这个可迭代对象中最大的元素 ...

  5. what's the python之基本运算符及字符串、列表、元祖、集合、字典的内置方法

    计算机可以进行的运算有很多种,运算按种类可分为算数运算.比较运算.逻辑运算.赋值运算.成员运算.身份运算.字符串和列表的算数运算只能用+和*,字典没有顺序,所以不能进行算数运算和比较运算.比较运算中= ...

  6. day007 列表类型、元祖类型、 字典类型、 集合类型的内置方法

    目录 列表数据类型的内置方法 作用 定义方式 优先掌握的方法 需要掌握的方法 元祖类型的内置方法 作用 定义方式 优先掌握的方法(参考列表方法) 字典类型的内置方法 作用 定义方式 优先掌握的方法 需 ...

  7. python之字符串,列表,字典,元组,集合内置方法总结

    目录 数字类型的内置方法 整型/浮点型 字符串类型的内置方法 列表的内置方法 字典的内置方法 元组的内置方法 集合类型内置方法 布尔类型 数据类型总结 数字类型的内置方法 整型/浮点型 加 + 减 - ...

  8. python常用数据类型内置方法介绍

    熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...

  9. Python学习day08-python进阶(2)-内置方法

    Python学习day08-python进阶(2)-内置方法 列表数据类型内置方法 作用 描述多个值,比如爱好 定义方法       xxxxxxxxxx 2         1 hobby_list ...

随机推荐

  1. hdu 1506 单调栈

    #include <bits/stdc++.h> #define PI acos(-1.0) #define mem(a,b) memset((a),b,sizeof(a)) #defin ...

  2. spring boot filter -Autowired

    需求:在SpringBoot实现拦截器,并且需要自定义的filter类型自动装配一些对象 自定义的过滤器类 public class SessionExpireFilter implements Fi ...

  3. Flask【第2篇】:Flask基础

    Flask基础 知识点回顾 1.flask依赖wsgi,实现wsgi的模块:wsgiref,werkzeug,uwsgi 2.实例化Flask对象,里面是有参数的 app = Flask(__name ...

  4. 在浏览器下载pdf,或者txt文档是会直接打开

    window.location.href = url会直接打开,解释大概是因为浏览器自身可以解析.pdf或者txt.解决方法如下: 本来就要用a标签里面加上download属性的,结果发现不行,就算了 ...

  5. poj 3352 : Road Construction 【ebcc】

    题目链接 题意:给出一个连通图,求最少加入多少条边可使图变成一个 边-双连通分量 模板题,熟悉一下边连通分量的定义.最后ans=(leaf+1)/2.leaf为原图中size为1的边-双连通分量 #i ...

  6. 【leetcode】1138. Alphabet Board Path

    题目如下: On an alphabet board, we start at position (0, 0), corresponding to character board[0][0]. Her ...

  7. 对react的redux的研究(一)

      action types   export const ADD_TODO = 'ADD_TODO' export const TOGGLE_TODO = 'TOGGLE_TODO' export ...

  8. Oracle RAC业务bug导致部分数据丢失处理

    问题描述:业务部门在10月26日发现某张基础表中丢失部分数据,系为9月份录入系统的基础数据丢失 Oracle RAC环境做的RMAN备份,10月18日做过expdp数据泵备份,丢失数据表名为T_GL_ ...

  9. BZOJ 4026: dC Loves Number Theory 可持久化线段树 + 欧拉函数 + 数学

    Code: #include <bits/stdc++.h> #define ll long long #define maxn 50207 #define setIO(s) freope ...

  10. EOF和~

    输入包含多组数据 while(~scanf("%d",&n))<=>  while(scanf("%d",&n)!=EOF)