我习惯使用*_
传递我不关心的参数给方法,例如:
def fun(a, *_):
pass
这样fun
可以用任意数量的位置参数调用,而我只保留第一个。
是否仅使用最后一个对称的可能性?像
def fun(*_, a):
pass
答案 0 :(得分:1)
是的,在python 3中有:
def fun(*_, a):
print(_)
print(a)
fun(1, 2, 3, a=4)
请注意,这样一来,您将不得不使用a
作为关键字参数(并在任何情况下都指定a=...
)。 f(4)
不起作用。 f(a=4)
将。
而这恰好可以用于:强制仅使用关键字的参数。
这是相应的PEP:PEP 3102。