首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏bit哲学院

    Python frozenset() 函数

    参考链接: Python Frozenset() 描述   frozenset() 返回一个冻结的集合,冻结后集合不能再添加或删除任何元素。    语法   frozenset() 函数语法:    class frozenset([iterable])   参数   iterable -- 可迭代的对象,比如列表、字典、元组等等。   返回值   返回新的 frozenset 对象,如果不提供任何参数,默认会生成空集合。。    实例   以下实例展示了 frozenset() 的使用方法:    >>>a = frozenset(range(10))     # 生成一个新的不可变集合 >>> a frozenset([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> b = frozenset('runoob')  >>> b frozenset(['b', 'r', 'u', 'o', 'n'])   

    51700发布于 2021-01-23
  • 来自专栏python前行者

    python set()和frozenset()函数

    ()函数 frozenset() 返回一个冻结的集合,冻结后集合不能再添加或删除任何元素。 frozenset()函数:返回新的 frozenset 对象,如果不提供任何参数,默认会生成空集合。 >>>a = frozenset(range(10)) # 生成一个新的不可变集合 >>> a frozenset([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> b = frozenset('runoob') >>> b frozenset(['b', 'r', 'u', 'o', 'n']) # 创建不可变集合 >>> ---- 集合的创建 set()和 frozenset 'p', 's']) >>> t ^ s frozenset(['c', 'b', 'e', 'k']) >>> t - s frozenset(['k', 'b']) 如果左右两个操作数的类型相同,

    64410编辑于 2022-04-12
  • 来自专栏猿说编程

    17.python frozenset集合

    一.frozenset集合语法 # 创建一个frozenset集合 a = frozenset(iterable) 其中 iterable 是序列或者可迭代对象,并返回frozenset集合 二.frozenset """     a = frozenset(["q123","python","frozenset"]) print(a) # 获取a的类型 print(type(a)) # 修改frozenset集合数据 ,程序报错:AttributeError: 'frozenset' object has no attribute 'add' # a.add("hello") 输出结果: frozenset({'frozenset ', 'python', 'q123'}) <class 'frozenset'> 在上面代码中,如果尝试修改frozenset集合的数据,即使用add()添加数据,程序报错:AttributeError : ‘frozenset’ object has no attribute ‘add’!

    48020发布于 2020-03-12
  • 来自专栏nummy

    set与frozenset的区别

    set有两种类型,set和frozenset。 set是可变的,有add(),remove()等方法。既然是可变的,所以它不存在哈希值。 frozenset是冻结的集合,它是不可变的,存在哈希值,好处是它可以作为字典的key,也可以作为其它集合的元素。缺点是一旦创建便不能更改,没有add,remove方法。 举例如下 seta=frozenset('a') dicta={seta:1,'b':2} #正确 setb=set('a') dictb={setb:1,'b':2} #错误 还有一点需要注意,不管是 set还是frozenset,Python都不支持创建一个整数的集合。

    52220发布于 2018-08-27
  • 来自专栏若城技术专栏

    13.Python frozenset集合详解

    什么是frozensetfrozenset是Python中的不可变集合类型,它具有普通集合(set)的大部分特性,但一旦创建就不能修改。 frozenset vs set 的主要区别 可变性: set是可变的(mutable) frozenset是不可变的(immutable) 支持的操作: set支持添加、删除等修改操作 frozenset fs2 = frozenset((1, 2, 3)) print(fs2) # 输出: frozenset({1, 2, 3}) # 从字符串创建 fs3 = frozenset('hello') print(fs3) # 输出: frozenset({'h', 'e', 'l', 'o'}) # 创建空frozenset fs4 = frozenset() print(fs4) # 输出 支持的操作 # 创建两个frozenset fs1 = frozenset([1, 2, 3, 4]) fs2 = frozenset([3, 4, 5, 6]) # 计算交集 intersection

    52110编辑于 2025-04-11
  • 来自专栏Python学习者

    python中set和frozenset方法和区别

    set(可变集合)与frozenset(不可变集合)的区别:set无序排序且不重复,是可变的,有add(),remove()等方法。既然是可变的,所以它不存在哈希值。 frozenset是冻结的集合,它是不可变的,存在哈希值,好处是它可以作为字典的key,也可以作为其它集合的元素。缺点是一旦创建便不能更改,没有add,remove方法。 一、集合的创建set()和 frozenset()工厂函数分别用来生成可变和不可变的集合。如果不提供任何参数,默认会生成空集合。 AttributeError: 'frozenset' object has no attribute 'add'三、成员关系 (in, not in) >>> 'k' in s False >>> ' (左操作数是 set,右操作数是 frozenset,或相反情况),则所产生的结果类型与左操作数的类型相同。

    55620编辑于 2023-05-16
  • 来自专栏编程教程

    Python frozenset 集合详解:不可变集合的终极指南

    一、frozenset 本质解析 1.1 集合的双重性格 Python集合体系呈现清晰的层级关系: MutableSet├─ set└─ frozenset set:可变集合,支持增删改操作 frozenset 1.2 不可变性的三重保障 哈希稳定性:frozenset 实例的哈希值在其生命周期内保持不变 内存驻留:Python会缓存小整数和短字符串,frozenset 也享受此优化 线程安全:天然免疫多线程环境下的竞态条件 ([1, 2, 3]) # 集合转换s = {1, 2, 3}fs2 = frozenset(s) # 空集合empty_fs = frozenset() 2.2 集合运算全览 操作 示例 说明 并集 `fs1 fs2` 交集 fs1 & fs2 返回新frozenset 差集 fs1 - fs2 返回新frozenset 对称差集 fs1 ^ fs2 返回新frozenset 子集判断 fs1 <= (['theme', 'color']): 'dark_mode', frozenset(['language', 'region']): 'en_US'} # 安全查询key = frozenset

    30710编辑于 2025-08-28
  • Python `*args` 和 `**kwargs`:优雅处理可变参数的终极指南 & 配合 frozenset 实现通用缓存装饰器

    Python 的 frozenset 就是为了解决这个问题 - 它是不可变的集合类型。 关于frozenset的几个重要特点不可变性:一旦创建就不能修改,这使它可以作为字典的键# 这是允许的d = {frozenset([1, 2, 3]): "value"}# 这会报错s = set([ 1, 2, 3])d = {s: "value"} # TypeError: unhashable type: 'set'顺序无关性:# 这两个frozenset是相等的fs1 = frozenset __name__, args, tuple(sorted(kwargs.items())))关于frozenset的注意事项frozenset只能包含可哈希的元素。 例如,你不能创建包含列表或字典的frozenset

    29410编辑于 2024-12-18
  • 来自专栏小小程序员——DATA

    关联规则 python实现Apriori算法

    ({‘A’}), frozenset({‘B’}), frozenset({‘C’}), frozenset({‘E’})] 第 2 轮: [frozenset({‘C’, ‘B’}), frozenset ({‘E’, ‘B’}), frozenset({‘C’, ‘E’})] 第 3 轮: [frozenset({‘C’, ‘E’, ‘B’})] 支持度数据: frozenset({‘A’}): 0.5 frozenset({‘D’}): 0.25 frozenset({‘B’}): 0.75 frozenset({‘C’}): 0.5 frozenset({‘E’}): 0.75 frozenset ({‘C’, ‘B’}): 0.5 frozenset({‘E’, ‘B’}): 0.75 frozenset({‘C’, ‘E’}): 0.5 frozenset({‘A’, ‘B’}): 0.25 frozenset({‘C’, ‘A’}): 0.25 frozenset({‘A’, ‘E’}): 0.25 frozenset({‘C’, ‘E’, ‘B’}): 0.5

    37310编辑于 2023-12-18
  • 来自专栏python+前端 知识分享

    Python中定义集合的方法【大全】

    1.使用frozenset()函数构造 set3 = frozenset(str1) print(set3, type(set3)) set4 = frozenset(list1) print(set4 , type(set4)) set5 = frozenset(tup1) print(set5, type(set5)) set6 = frozenset(dict1) print(set6, type (set6)) 返回结果: frozenset({'p', 'n', 't', 'h', 'y', 'o'}) <class 'frozenset'> frozenset({1, 2, 3}) <class 'frozenset'> frozenset({1, 2, 3}) <class 'frozenset'> frozenset({'name', 'age', 'love'}) <class 'frozenset '> 2.推导式构造 set7 = frozenset(i for i in range(1, 5)) print(set7, type(set7)) 返回结果: frozenset({1, 2, 3,

    2.5K31编辑于 2021-12-04
  • 来自专栏DotNet NB && CloudNative

    使用 .NET 8 中的 FrozenCollection

    Intro .NET 8 中引入了 FrozenCollection 使得只读 Collection 的操作性能更加好了,Stephen 在 .NET 8 的性能改进博客中也有提到,在只读的场景可以考虑使用 FrozenSet /FrozenDictionary 来提升性能 FrozenSet vs ImmutableHashSet FrozenSet/FrozenDictionary 实现大致原理差不多,所以我们以 FrozenSet 来分析 很多人可能会问不是已经有了 ImmutableHashSet/ImmutableDictionary 吗,为什么还要引入 FrozenSet/FrozenDictinary 呢? 这正是 FrozenDictionary<TKey, TValue> 和 FrozenSet所提供的。 的性能更加优秀,Dictionary 大家可以自己动动手尝试一下 除了前面说的 FrozenSet 没有 ImmutableHashSet 支持 Add/Remove 之外,FrozenSet/FrozenDictionary

    43910编辑于 2025-01-22
  • 来自专栏AILearning

    【机器学习实战】第11章 使用 Apriori 算法进行关联分析

    第一次执行时 L 为 [[frozenset([1]), frozenset([3]), frozenset([2]), frozenset([5])]]。 L[k-2]=L[0]=[frozenset([1]), frozenset([3]), frozenset([2]), frozenset([5])],最后面 k += 1 while (len ([1, 3]), H = [frozenset([1]), frozenset([3])],那么现在需要求出 frozenset([1]) -> frozenset([3]) 的可信度和 frozenset ([2]), frozenset([3]), frozenset([5])] # 第一次递归调用时生成 [frozenset([2, 3]), frozenset([2, 5]), frozenset ([1]), frozenset([3]), frozenset([2]), frozenset([5])], [frozenset([1, 3]), frozenset([2, 5]), frozenset

    2.1K60发布于 2018-01-15
  • 来自专栏python+前端 知识分享

    Python求交集和并集方法和示例操作 【详解】

    set7 = {'name', 18, 'python2', 'abc'} set8 = frozenset({'name', 19, 'python3', 'abc'}) res = set7.intersection (set8) # {'abc', 'name'} <class 'set'> print(res, type(res)) res = set8.intersection(set7) # frozenset ({'abc', 'name'}) <class 'frozenset'> print(res, type(res)) 返回结果: {'abc', 'name'} <class 'set'> frozenset ({'abc', 'name'}) <class 'frozenset'> ## 2. python2', 'abc'} set6 = {'name', 19, 'python3', 'abc'} set7 = {'name', 18, 'python2', 'abc'} set8 = frozenset

    7.6K30编辑于 2021-12-04
  • 来自专栏GhostCN_Z

    19-3-7Python中小数据池、数据类型的补充、set集合

    通常用for循环. frozenset:冻结的集合 最大的特点:不可变. () s = frozenset('abcabc') s = frozenset([1,2,3]) s = frozenset((1,2,3)) s = frozenset({'name':'Andy' ,'age':10}) 集合的四大方法:并,交,差,对称差. set,frozenset是否可以混用? 总结: 如果两种数据类型混用,方法的主调者的类型决定了最终结果的类型. frozenset应用场景: 凡是使用到不可改变的数据的场景,都是可以使用frozenset的. set集合的元素:必须是可以哈希的 但是frozenset是不可变的数据.(可以哈希的),它是可以放到集合中. set和frozenset可以互相转换.

    73310发布于 2020-04-03
  • 来自专栏全栈程序员必看

    数据挖掘十大算法(四):Apriori(关联分析算法)

    是为了后面可以将这些值作为字典的键 return list(map(frozenset, C1)) # frozenset一种不可变的集合,set可变集合 # 过滤掉不符合支持度的集合 # 是否是tid的《子集》 (这里使用子集的方式来判断两者的关系) if can not in ssCnt: # 统计该值在整个记录中满足子集的次数(以字典的形式记录,frozenset ({2, 3}), frozenset({3, 5})] -> [frozenset({2, 3, 5})] def aprioriGen(Lk, k): retList = [] lenLk 字典 [frozenset({1}), frozenset({2}), frozenset({3}), frozenset({4}), frozenset({5})] L1, supportData ([item]) for item in freqSet] # frozenset({2, 3}) 转换为 [frozenset({2}), frozenset({3})]

    2.9K20编辑于 2022-08-14
  • 来自专栏机器学习/数据可视化

    机器学习算法:关联规则分析

    ({1, 3}), frozenset({1, 2}), frozenset({1, 5}), frozenset({2, 3}), frozenset({3, 5}), frozenset( ({3}), frozenset({2}), frozenset({5})], [frozenset({2, 5})], []], {frozenset({1}): 0.5, frozenset( {3}): 0.75, frozenset({4}): 0.25, frozenset({2}): 0.75, frozenset({5}): 0.75, frozenset({1, 3 }): 0.5, frozenset({2, 3}): 0.5, frozenset({3, 5}): 0.5, frozenset({2, 5}): 0.75, frozenset({ 1, 2}): 0.25, frozenset({1, 5}): 0.25, frozenset({2, 3, 5}): 0.5}) 流程 首先从原始数据中经过扫描函数得到1-项集和相应的置信度

    2.5K50编辑于 2022-04-18
  • 来自专栏老齐教室

    开源图书《Python完全自学教程》第5.2.2节

    除了“可变集合”之外,还有一种集合是“不可变的”,创建这种集合要使用 frozenset() 函数。 >>> fs = frozenset([1,2,3]) # (8) >>> fs frozenset({1, 2, 3}) # (9) >>> type(fs) <class 'frozenset'> # (10) >>> dir(fs) ['__and__', '__class__', '__class_getitem__', '__contains_ ' object has no attribute 'add' 不可变集合和可变集合之间,可以通过内置函数 set() 和 frozenset() 进行相互转换。 >>> frozenset(s) # s 转换为不可变集合 frozenset({1, 2})

    41030编辑于 2022-05-17
  • 来自专栏机器学习/数据可视化

    机器学习算法-关联规则分析

    ({1, 3}), frozenset({1, 2}), frozenset({1, 5}), frozenset({2, 3}), frozenset({3, 5}), frozenset( ({3}), frozenset({2}), frozenset({5})], [frozenset({2, 5})], []], {frozenset({1}): 0.5, frozenset( {3}): 0.75, frozenset({4}): 0.25, frozenset({2}): 0.75, frozenset({5}): 0.75, frozenset({1, 3 }): 0.5, frozenset({2, 3}): 0.5, frozenset({3, 5}): 0.5, frozenset({2, 5}): 0.75, frozenset({ 1, 2}): 0.25, frozenset({1, 5}): 0.25, frozenset({2, 3, 5}): 0.5}) 流程 首先从原始数据中经过扫描函数得到1-项集和相应的置信度

    77420编辑于 2023-08-23
  • 来自专栏阿黎逸阳的代码

    【Python】基于多列组合删除数据框中的重复值

    一种是写循环依次判断是否重复删重,另一种是用本公众号文章:Python中的集合提到的frozenset函数,一句语句解决该问题。 循环太过繁琐,而且速度较慢。 apply(frozenset, axis=1):把取出两列中的行当做变量依次传到frozenset函数中去。 frozenset:冻结集合,不可变,存在哈希值。 3 拆分代码并展示结果 拆分代码1: df[['merchant_r', 'merchant_l']].apply(frozenset, axis=1) 得到结果: ? 我们来看下用set替换frozenset是否可行。 而用frozenset函数配合其它函数代码特别简洁,故分享给更多有需要的朋友。本文有偏颇的地方欢迎指正。

    23.4K30发布于 2020-09-08
  • 来自专栏程序人生丶

    Python 内置数据类型详解

    Python默认内置了以下这些数据类型,分为以下几类: 文本类型:str 数值类型:int、float、complex 序列类型:list、tuple、range 映射类型:dict 集合类型:set、frozenset range x = {"name" : "John", "age" : 36} dict x = {"apple", "banana", "cherry"} set x = frozenset ({"apple", "banana", "cherry"}) frozenset x = True bool x = b"Hello" bytes x = bytearray( range x = dict(name="John", age=36) dict x = set(("apple", "banana", "cherry")) set x = frozenset (("apple", "banana", "cherry")) frozenset x = bool(5) bool x = bytes(5) bytes x = bytearray

    44820编辑于 2023-09-21
领券