devo prendere un ampio elenco di parole nella forma:Strip tutti gli elementi di un elenco di stringhe
['this\n', 'is\n', 'a\n', 'list\n', 'of\n', 'words\n']
e quindi utilizzando la funzione strip, lo trasformano in:
['this', 'is', 'a', 'list', 'of', 'words']
I pensato che quello che avevo scritto avrebbe funzionato, ma continuo a ricevere un errore che dice:
"'list' object has no attribute 'strip'"
Ecco il codice che ho provato:
strip_list = []
for lengths in range(1,20):
strip_list.append(0) #longest word in the text file is 20 characters long
for a in lines:
strip_list.append(lines[a].strip())
Si prega di spiegare perché si sta aggiungendo 0 a 'strip_list' 19 volte, quindi aggiungendo le linee spogliate. Quel codice ha un cattivo odore a riguardo. Inoltre, se hai preso quella roba da un file, dovresti spogliarla mentre stai facendo - costruire una lista di grandi dimensioni e poi scagliarla in un'altra grande lista non è una buona idea. Inoltre, il tuo codice non dovrebbe dipendere dal conoscere la lunghezza della parola/riga più lunga. Fai un passo indietro - cosa stai cercando di ottenere? Cosa farai con 'strip_list'? –
Correlati [Come rimuovere \ n da un elemento dell'elenco?] (Http: // stackoverflow.com/q/3849509) –