Cómo extraer parámetros de una lista y pasarlos a una llamada de función

¿Cuál es una manera buena y breve de extraer elementos de una lista y pasarlos como parámetros a una llamada de función, como en el siguiente ejemplo?

Ejemplo:

def add(a,b,c,d,e): print(a,b,c,d,e) x=(1,2,3,4,5) add(magic_function(x)) 

Puede descomprimir una tupla o una lista en argumentos posicionales utilizando una estrella.

 def add(a, b, c): print(a, b, c) x = (1, 2, 3) add(*x) 

Del mismo modo, puede utilizar la estrella doble para descomprimir un dictado en argumentos de palabras clave.

 x = { 'a': 3, 'b': 1, 'c': 2 } add(**x) 

Creo que te refieres al operador de desempaquetado * :

 >>> l = [1,2,3,4,5] >>> def add(a,b,c,d,e): ... print(a,b,c,d,e) ... >>> add(*l) 1 2 3 4 5 

Utilice el operador * . Así que add(*x) haría lo que quieras.

Vea esta otra pregunta SO para más información.