2010-02-24 16 views
7

Ho una lunga stringa che costruisco con un mucchio di valori calcolati. Quindi scrivo questa stringa in un file. l'ho formattato come:Il commento di ritorno a capo è possibile in Python?

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

Vorrei aggiungere un commento a ciò che ogni valore rappresenta, ma commentando con # o ''' non funziona. Ecco un esempio:

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

ho capito che non funziona :) quindi mi chiedo che cosa codice con una sintassi pulita apparirebbe come in una situazione come questa.

L'unica opzione che mi viene in mente sarebbe quella di andare su string += su ogni riga ma mi sto grattando la testa con "deve esserci un modo migliore".

risposta

7

Una soluzione semplice è quella di utilizzare le parentesi, invece:

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

Per una sintassi più pulito, "+" può essere sostituito con ",", "\ t" rimosso, quindi finalmente unirli usando "\ t" (il finale \ n dovrebbe essere aggiunto dopo questo, però) – RichN

1

Come su

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

O se preferite

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