当前位置: 首页 > 面试题库 >

Python是否有序集?

越麒
2023-03-14
问题内容

Python有一个有序的字典。有序套呢?


问题答案:

为此,有一个有序的设置(可能的新链接)配方,可从Python 2文档中引用。它可以在Py2.6或更高版本以及3.0或更高版本上运行,而无需进行任何修改。该接口几乎与普通集合完全相同,不同之处在于初始化应使用列表进行。

OrderedSet([1, 2, 3])

这是一个MutableSet,因此for的签名.union与set 的签名不匹配,但是由于它包含__or__类似的内容,因此可以轻松添加:

@staticmethod
def union(*sets):
    union = OrderedSet()
    union.union(*sets)
    return union

def union(self, *sets):
    for set in sets:
        self |= set


 类似资料:
  • 问题内容: 我所说的结构是: 操作复杂度O(log n) O(log n)查找元素的复杂度 O(n)复杂度进行计算,将被排序 问题答案: 标准Python列表不以任何形式排序。标准的heapq模块可用于将O(log n)追加到现有列表中,并删除O(log n)中最小的模块,但在定义中不是排序列表。 有许多符合您需求的Python平衡树实现,例如rbtree,RBTree或pyavl。

  • 问题内容: 我想知道Python是否具有类似C#匿名类功能的东西。为了澄清,这是一个示例C#代码段: 在Python中,我会想象这样的事情: 特定要求是能够在表达式上下文中创建具有指定字段的对象(例如,可在lambda和不允许使用语句的其他地方使用),而无需其他外部声明,并且能够通过普通成员按名称访问各个组件访问语法。创建的对象还应按 组件名称 (而不是像元组那样按位置)实现结构比较。 特别是:元

  • 问题内容: 我一直在浏览教程和书籍,但是找不到内置产品函数,即与sum()相同类型的产品,但是找不到诸如的任何内容。 是通过导入运算符在列表中找到商品的唯一方法吗? 问题答案: 发音 是的,这是对的。Guido拒绝了内置prod()函数的想法,因为他认为很少需要它。 Python 3.8更新 在Python 3.8中, prod() 已添加到math模块: 用reduce()替代 正如您建议的那样

  • 问题内容: Python是否具有包/模块管理系统,类似于Ruby在哪里可以使用rubygems ? 在“ 安装Python模块”上 ,我仅看到对的引用,但这需要您首先找到该软件包。 问题答案: 2014年3月 :好消息!Pip随附了Python 3.4 。Pip长期以来一直是Python的事实上的标准包管理器。您可以这样安装软件包: 哇!这是所有Python版本中的最佳功能。它使每个人都可以访问社

  • 问题内容: 是否有一个库函数可以枚举Python中的质数(按顺序)? 我发现了这个问题,是列出N以下所有素数的最快方法,但是我宁愿使用别人可靠的库也不愿自己动手。我很乐意做 问题答案: 自问了这个问题之后,我围绕C ++库primesieve编写了Python包装器。https://github.com/hickford/primesieve- python

  • 问题内容: 我需要布尔数组的紧凑表示形式,Python是否具有内置的位域类型,还是需要找到其他解决方案? 问题答案: 当我最近有类似需求时,Bitarray是我找到的最佳答案。它是C的扩展(比纯Python的BitVector快得多),并将其数据存储在实际的位域中(因此,内存效率是numpy布尔数组的八倍,后者似乎每个元素使用一个字节。)