Does Python have an ordered set?(Python有有序集吗?)
问题描述
Python 有一个有序字典.那么有序集合呢?
Python has an ordered dictionary. What about an ordered set?
推荐答案
有一个有序集(可能的新链接)配方这是从 Python 2 文档 中引用的.这可以在 Py2.6 或更高版本以及 3.0 或更高版本上运行,无需任何修改.接口几乎和普通集合一样,只是初始化应该用一个列表来完成.
There is an ordered set (possible new link) recipe for this which is referred to from the Python 2 Documentation. This runs on Py2.6 or later and 3.0 or later without any modifications. The interface is almost exactly the same as a normal set, except that initialisation should be done with a list.
OrderedSet([1, 2, 3])
这是一个 MutableSet,因此 .union 的签名与 set 的签名不匹配,但由于它包含 __or__,因此可以轻松添加类似的内容:
This is a MutableSet, so the signature for .union doesn't match that of set, but since it includes __or__ something similar can easily be added:
@staticmethod
def union(*sets):
union = OrderedSet()
union.union(*sets)
return union
def union(self, *sets):
for set in sets:
self |= set
这篇关于Python有有序集吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Python有有序集吗?
基础教程推荐
- Discord.py 缺少必需的参数 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
