2011-08-03 16 views
5

en C (y C familia de idiomas) una expresión (4+7, 5+2) devuelve 7. Pero la misma expresión en Python daría como resultado una tupla (11, 7)does python tiene un operador de coma como C

Entonces, ¿python tiene un operador de coma como C?

+5

No, pero la verdadera pregunta es por qué querrías una –

+3

Hermosa es mejor que fea. Sparse es mejor que denso. La legibilidad cuenta. –

+1

Si Python tiene ese operador de coma inútil, ya no creo que Python sea legible. –

Respuesta

7

Debe utilizar algo como esto para reemplazarlo:

comma_operated = (4+7, 5+2)[-1] 

pero como se ha señalado correctamente en los comentarios, ¿por qué quiere él? Se usa en C o C++ muy raramente y hay buenas razones para eso.

+1

nice :) en realidad, es útil depurar una lista de comprensión: puede ejecutar una impresión en la comprensión para ver qué está pasando –

5

AFAIK, no. Aunque siempre puedes simular esto usando dos líneas en lugar de una. :-)

x = (call_one(), call_two()) 

# is almost the same as 

call_one() 
x = call_two() 

# or 
x = (call_one(), call_two())[1] 
Cuestiones relacionadas