【问题标题】:set properties and union method设置属性和联合方法
【发布时间】:2015-04-01 10:41:43
【问题描述】:

我有一个关于套装的问题。 我有以下代码来说明我的问题。

def f2( s ):
    return { c.upper() for c in s if c.isalpha() }

print f2( "A r'a|ccCc^#zZ" )
print f2( "A r'a|ccCc^#zZ" ).union( [( 'B', )] )
print f2( "A r'a|ccCc^#zZ" ).union( [( 'T', )])

结果是:

set(['A', 'C', 'R', 'Z'])
set(['A', ('B',), 'C', 'R', 'Z'])
set(['A', 'C', 'R', 'Z', ('T',)])

为什么设置顺序是那个顺序? 第一次我可以猜到它是根据 A-Z 排序的(散列函数?) 但是为什么其他行中元组的位置会有所不同呢?

【问题讨论】:

    标签: python hash set tuples union


    【解决方案1】:

    Sets have no order.

    来自文档:

    sets 模块提供了用于构造和操作无序独特元素集合的类。常见用途包括成员资格测试、从序列中删除重复项以及计算集合上的标准数学运算,例如交集、并集、差集和对称差集。

    【讨论】:

      猜你喜欢
      • 2012-07-09
      • 2013-10-30
      • 1970-01-01
      • 2015-06-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-02
      • 2014-03-10
      相关资源
      最近更新 更多