Python中的空元组是否有任何用途?

use*_*419 20 python

还有其他目的(除了那里因为它需要)空元组可能有吗?或者:你会用什么空元组?如果有什么.我只是找不到答案(好吧,一个肯定的答案,如:"是的,有"),请帮助我解决这个问题."用于测试另一个元组是否为空"不是一个可接受的答案,因为我们应该使用'not'运算符.

S.L*_*ott 18

这是什么时候.

def tuple_of_primes_less_than( n ):
    if n <= 2: return ()
    else:
        x, p = set( range(2,n) ), 2
        while p <= max(x):
            for k in range(2,int(2+math.sqrt(p))):
                x.discard(k*p)
            p += 1
        return tuple( sorted( x ) )
Run Code Online (Sandbox Code Playgroud)

  • 显然不是.你的问题应该是"为什么不明显?" 我想我被它的不变性和空虚所欺骗了:) (4认同)
  • 不好的例子.应该列出相同类型的对象的集合.例如,参见[**这个很棒的答案**](http://stackoverflow.com/a/1708603/241039)(这是我现在发现的,但我记得在信誉良好的来源中看到了同样的想法). (3认同)

Mar*_*tos 8

您可能希望将参数作为元组存储到函数中,而不事先知道函数的结构.如果您需要存储参数的函数不带参数,则需要存储空元组.

这只是许多例子中的一个,为什么通常最好不要质疑边缘情况的存在,只是因为我们不能想到它们的用途.支持边缘案件的需要不久就会出现.