2016-10-28 14 views
1

Ich wollte list1 in list2 ändern, um die% ersetzen als "" zu entfernen. Wenn jedoch verwende ich folgende Aussage:Edite die Zeichenfolge Python regulären Ausdruck Python

print [i.replace("%"," ") for i in list1] 
[u' app General Council ', u' people ', u' people Regional Council Mandate ', u' ppp General Council Mandate ', u' Regional Council ', u' chair Label ', u' chairman Title ', u' chairman ', u' chairperson '] 

das Ergebnis ist nicht das, was ich will. Wie wird das Leerzeichen am Anfang und Ende jedes Elements entfernt? so dass ich das Ergebnis erhalten kann, das wie list2 ist.

+0

über die Leitung 'i.replace ("%", "")' statt 'i.replace ("%",“ „)' – Ashan

+0

i hat es versucht. es kann nicht, es wird alle Wörter zusammen – bob90937

+1

So einfach wie '[i.strip ('%'). ersetzen ('%%', '') für i in list1]' – agg3l

Antwort

3

Sie können auch versuchen, "%%" mit " " zuerst und "%" mit "" später zu ersetzen. Das wird dein Problem lösen.

In [18]: list2 = [i.replace("%%"," ") for i in list1] 

In [19]: list2 
Out[19]: 
[u'%app General Council%', 
u'%people%', 
u'%people Regional Council Mandate%', 
u'%ppp General Council Mandate%', 
u'%Regional Council%', 
u'%chair Label%', 
u'%chairman Title%', 
u'%chairman%', 
u'%chairperson%'] 

In [20]: list2 = [i.replace("%","") for i in list2] 

In [21]: list2 
Out[21]: 
[u'app General Council', 
u'people', 
u'people Regional Council Mandate', 
u'ppp General Council Mandate', 
u'Regional Council', 
u'chair Label', 
u'chairman Title', 
u'chairman', 
u'chairperson'] 
Verwandte Themen