2012-03-07 15 views
11

¿Hay algún equivalente a la función PHP list() en python? Por ejemplo:PHP list() equivalente en Python

PHP:

list($first, $second, $third) = $myIndexArray; 
echo "First: $first, Second: $second"; 

Respuesta

24
>>> a, b, c = [1, 2, 3] 
>>> print a, b, c 
1 2 3 

o una traducción directa de su caso:

>>> myIndexArray = [1, 2, 3] 
>>> first, second, third = myIndexArray 
>>> print "First: %d, Second: %d" % (first, second) 
First: 1, Second: 2 

Python implementa esta funcionalidad mediante una llamada al método __iter__ en el lado derecho expresión y asignar cada elemento a las variables en el lado izquierdo. Esto le permite definir cómo se debe desempaquetar un objeto personalizado en una asignación de variables múltiples:

>>> class MyClass(object): 
... def __iter__(self): 
...  return iter([1, 2, 3]) 
... 
>>> a, b, c = MyClass() 
>>> print a, b, c 
1 2 3 
+0

Sweet. Esa es mucha más información de la que necesitaba, ¡y eso es increíble! – Drew

Cuestiones relacionadas