2016-06-05 1 views
0

J'ai une liste dans laquelle chaque élément est:Comment supprimer certains caractères des listes (Python 2.7)?

['a ',' b ',' c ',' d\n '] 

Je veux le manipuler de sorte que chaque élément devient juste:

['a','b','c','d'] 

Je ne pense pas que les espaces matière, mais Pour une raison quelconque, je n'arrive pas à retirer le \ n de la fin du 4ème élément. J'ai essayé de convertir en chaîne et le retirer en utilisant:

str.split('\n') 

Aucune erreur est renvoyée, mais il ne fait rien à la liste, il a encore \ n à la fin.

J'ai aussi essayé:

d.replace('\n','') 

Mais ce juste renvoie une erreur.

Ceci est clairement un problème simple mais je suis un débutant complet à Python alors toute aide serait appréciée, merci.

Edit:

Il semble que j'ai une liste de tableaux (je crois) donc suis-je raison de penser que la liste [0], la liste [1] etc sont leurs propres tableaux? Cela signifie-t-il que je peux utiliser une boucle for for i dans la liste pour supprimer \ n de chacun?

+0

Si vous ne voulez pas dans la liste, pourquoi ne pas éviter de les mettre en , plutôt que de l'éviter plus tard? –

Répondre

3
>>> my_array = ['a ',' b ',' c ',' d\n '] 
>>> my_array = [c.strip() for c in my_array] 
>>> my_array 
['a', 'b', 'c', 'd'] 

Si vous avez une liste de tableaux vous pouvez faire quelque chose dans les lignes de:

>>> list_of_arrays = [['a', 'b', 'c', 'd'], ['a ', ' b ', ' c ', ' d\n ']] 
>>> new_list = [[c.strip() for c in array] for array in list_of_arrays] 
>>> new_list 
[['a', 'b', 'c', 'd'], ['a', 'b', 'c', 'd']] 
+0

Donc, si je comprends bien, j'ai une liste de tableaux? Je pense que votre réponse fonctionnerait, mais je devrais le faire pour chaque tableau de la liste. –

+0

Merci, cela a parfaitement fonctionné. –

1

Essayez ceci -

arr = ['a ',' b ',' c ',' d\n '] 

arr = [s.strip() for s in arr] 
0

Une réponse très simple est joindre à votre liste, dépouiller le caractère suivant et diviser pour obtenir une nouvelle liste:

Newlist = '' .join (myList) .strip(). split()

Votre NewList est maintenant:

[ 'a', 'b', 'c', 'd']