将python元组放在函数签名中

pro*_*nso 5 python tuples pattern-matching python-2.7 function-signature

在python中有一个有趣且非常有用的工具,您可以通过它来模拟函数签名上的元组的值.

def first((a, b)):
    return a

x = (4, 9)
first(x)
li = [(5, 4), (8, 9)]
map(first, li)

def second(a, b):
    # does not work the same way
    return b
Run Code Online (Sandbox Code Playgroud)

我没有看到任何有关此用途的文献.python社区用于此的词汇是什么?有没有令人信服的理由不使用它?

Ste*_*ann 7

它被称为元组参数解包,并在Python 3.0中删除.

就像@zondo所说,出于兼容性原因,你可能不想使用它.我自己仍然偶尔在Python 2中使用它.你会在我的第一个链接的PEP中找到反对它的理由,但请记住,这些是它从语言中删除的原因,我认为这至少部分是因为它让Python制造商更容易,这不一定是你或我避免它的原因.