2010-02-24 17 views
7

Tengo una cadena larga que construyo con un montón de valores calculados. Luego escribo esta cadena en un archivo. lo tengo formateado como:¿Es posible un comentario de ajuste de línea en Python?

string = str(a/b)+\ 
     '\t'+str(c)\ 
     '\t'+str(d)\ 
     ... 
     '\n' 

me gustaría para añadir comentarios a lo que cada valor representa, pero comentando con # o ''' no funciona. He aquí un ejemplo:

string = str(a/b)+\  #this value is something 
     '\t'+str(c)\ #this value is another thing 
     '\t'+str(d)\ #and this one too 
     ... 
     '\n' 

me di cuenta de que no funciona :) Así que me pregunto qué código con una sintaxis limpia se vería en una situación como esta.

La única opción que se me ocurre sería ir por string += en cada línea, pero me estoy rascando la cabeza con "debe haber una manera mejor".

Respuesta

7

Una solución simple es utilizar paréntesis en su lugar:

string = (str(a/b)+  #this value is something 
      '\t'+str(c)+ #this value is another thing 
      '\t'+str(d)+ #and this one too 
      ... 
      '\n') 
+0

Para una sintaxis más limpia "+" puede ser reemplazado con ",", la "\ t" eliminada, y finalmente unirlas usando "\ t" (la final \ n debería agregarse después de esto, sin embargo) – RichN

1

¿Qué tal

string = '\t'.join(map(str,((a/b), #this value is something 
          c,  #this value is another thing 
          d,  #and this one too 
          )))+'\n' 

O si lo prefiere

string = '\t'.join(map(str,(
     (a/b), #this value is something 
     c,  #this value is another thing 
     d,  #and this one too 
     )))+'\n' 
Cuestiones relacionadas