python-3.x - 如何在没有默认“排序”的情况下加入两组
问题描述
希望加入两个集合作为附加而不进行排序。
这是我的代码:
a = {123,456,789}
b = {777,888}
a = a.union(b)
a
输出:
{123, 456, 777, 789, 888}
期望的输出:
{123, 456, 789, 777, 888}
谢谢!
解决方案
套装是无序的,所以你不能保证安排好。BEN_YO 的答案将使第二组元素位于末尾,但内部排序会有所不同,如他的示例输出所示。
如果订购很重要,您需要使用不同的集合类型。如果你想要排序和唯一性,一个快速的技巧是使用字典,因为在现代 python 字典中,键是有序和唯一的。
a = {123: '',456: '',789: ''}
b = {777: '',888: ''}
a = {**a, **b}
虽然那样你不能使用更快的合并操作,比如联合,所以它可能不是一个理想的解决方案。
推荐阅读
- topojson - 有没有办法改变 topojson 文件中的投影?
- angular - 如何以角度进行多个异步并行获取调用而不等待响应
- ios - 使用 CoreData @NSManaged 子类在不寻常的地方“将无法识别的选择器发送到实例”
- postgresql - 为什么我对索引字段的计数查询很慢?
- reactjs - formik,将 Field 的道具传给孩子?
- jmeter - 我的 jmeter 负载测试和 Apdex 中出现错误 500/OK。500/OK是什么意思?
- android - 在 Android React Native 应用程序中正确使用 Intl
- amazon-web-services - 如何使我的 Airflow EC2 实例 HTTPS?
- python - 无法腌制 lxml.etree._Element 对象
- swiftui - 将 WKInterfaceTimer 添加到 SwiftUI