Convierte la matriz / lista de Python 2D en una tabla

¿Cómo puedo convertir esto?

students = [("Abe", 200), ("Lindsay", 180), ("Rachel" , 215)] 

dentro de esto:

 Abe 200 Lindsay 180 Rachel 215 

EDIT: Esto debería ser capaz de trabajar para cualquier lista de tamaño.

Usar formato de cadena :

 >>> students = [("Abe", 200), ("Lindsay", 180), ("Rachel" , 215)] >>> for a, b in students: ... print '{:<7s} {}'.format(a, b) ... Abe 200 Lindsay 180 Rachel 215 

Use rjust y ljust

 for s in students: print s[0].ljust(8)+(str(s[1])).ljust(3) 

Salida:

  Abe 200 Lindsay 180 Rachel 215 

EDIT: alguien cambió un detalle clave de la pregunta A श wini च haudhary da una excelente respuesta. Si no estás en una posición de aprendizaje / uso de string.format en este momento, una forma más universal / algorítmica de resolver el problema es la siguiente:

 for (name, score) in students: print '%s%s%s\n'%(name,' '*(10-len(name)),score) 

Para Python 3.6+ puede usar f-string para una versión de una línea de la respuesta de Ashwini Chaudhary:

 >>> students = [("Abe", 200), ("Lindsay", 180), ("Rachel" , 215)] >>> print('\n'.join((f'{a:<7s} {b}' for a, b in students))) Abe 200 Lindsay 180 Rachel 215 

Si no sabe la longitud de la cadena más larga de su lista, puede calcularla de la siguiente manera:

 >>> width = max([len(s[0]) for s in students]) >>> print('\n'.join((f'{a:<{width}} {b}' for a, b in students))) Abe 200 Lindsay 180 Rachel 215