问题标签 [frozenset]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
417 浏览

python - 两列的冻结集并集

我有一个数据集,其中包含两列带有冻结集的列。现在我想合并/合并这些frozensets。我可以使用 for 循环来做到这一点,但是我的数据集包含超过 2700 万行,所以我正在寻找一种避免 for 循环的方法。有人有什么想法吗?

数据

带有 for 循环的代码

期望的输出

0 投票
1 回答
377 浏览

python - 如何将字典中冻结的键和值集转换为普通键和值?

我有一个frozensets 键和值的字典:

我怎样才能把它转换成这样的普通字典?

0 投票
1 回答
141 浏览

scipy - 为什么 expon() 的 Scipy 实例返回类型:

我很感兴趣为什么下面的代码返回一个实例类型rv_frozenwhenexpon()是文件class expon_gen(rv_continuous)中的一个实例stats._continous_distns.py

它不应该返回类型:<scipy.stats._distn_infrastructure.rv_continous>

0 投票
0 回答
29 浏览

python - Python freezeset 实例的相等性如何确定?

下面的代码怎么可能?

我的理解是,只要迭代的每个元素都是可散列的,就会实例化一个冻结集,每个元素都是给定迭代的元素。我希望上面的两个表达式都应该返回True

0 投票
2 回答
391 浏览

python - 如何在 Python 中实现frozenset 相等?

CPython 中如何实现frozenset 相等?特别是,我想知道 frozenset 中的各个元素如何相互比较以及它们的总时间复杂度。

我查看了set 和 freezeset 在实现https://stackoverflow.com/a/51778365/5792721中的差异。

第二个链接中的答案涵盖了比较集合中各个元素之前的步骤,但缺少实际的比较算法。

0 投票
4 回答
605 浏览

python - 哪个需要更少的内存,frozenset 还是 tuple?

我有一个需要用 0-3 个字符串“标记”的对象(在一组 20 种可能性中);这些值都是唯一的,顺序无关紧要。唯一需要对标签执行的操作是检查特定标签是否存在 ( specific_value in self.tags)。

但是,内存中同时存在大量这些对象,以至于它突破了我旧计算机 RAM 的限制。所以节省几个字节可以加起来。

由于每个对象上的标签如此之少,我怀疑查找时间是否很重要。但是:在这里使用元组和冻结集之间是否存在内存差异?还有其他真正的理由使用其中一个吗?

0 投票
1 回答
880 浏览

python - 将frozensets附加到字典

我正在使用一段代码(用 python 编写),它接受以下形式的参数:

我有一个形式的元组:

在哪里,我想创建一个可以读作的frozenset:

这个想法是能够设置restricted_bonds = d

我尝试了以下几种变体:

理想的结果将是:

0 投票
1 回答
54 浏览

python - 为什么此类构造函数会引发此错误?

有这个类:

执行A(range(2))导致以下错误:

同时,frozenset(range(2))有效,如果我继承AsetA(range(2))也有效。

如果我将 0 个或多个参数传递给 A 的构造函数,它会正常工作(使用 0 个参数创建一个空集,使用 2 个或更多参数 raises TypeError: A expected at most 1 arguments, got 2)。

0 投票
2 回答
305 浏览

python - Python:使用 freezeset 的成员资格测试方式比集合、元组和列表慢?

当我掉进那个兔子洞时,我已经阅读了几个小时试图了解会员测试和速度。我以为我已经得到了它,直到我运行了我自己的小时间测试测试

这是代码

这是结果

列表:0.3762843

元组:0.38087859999999996

设置:0.06568490000000005

冻结集:1.5114070000000002

具有相同时间的列表和元组是有意义的。我认为 set 和 freezeset 也会有相同的时间,但即使与列表相比它也非常慢?

将代码更改为以下内容仍然会给我类似的结果:

0 投票
2 回答
115 浏览

python - freezesets 的“Multiton”实现 - 每个值只有一个实例

我怎样才能实现frozensets 的 Multiton 设计模式,无论它frozenset是如何创建的?

我正在寻找的是行为就像 的类frozenset,但它保证“完全实习”:对于任何两个实例,如果a == bthen a is b

这个问题的答案似乎为传递给构造函数的每个参数 生成了一个实例(并且似乎还假设这些是可散列的)。但是一个给定的frozenset可以用许多不同的方式构造:构造函数可以得到具有不同元素顺序的元组,或者不可散列的列表;或者您可以使用诸如 a.union(b) 之类的运算符来创建冻结集等。

动机自然是 - 试图节省内存。我有一个图,其中许多顶点由(除其他外)recurring frozensets 标记。该图是通过从旧的顶点创建新的顶点来“增长”的,而新frozenset的 s 是通过从旧的顶点中添加或删除元素来获得的。

非常感谢!