Je suis assez nouveau à la programmation et à Python. J'ai une liste de chaîne: Comment puis-je nettoyer toute la barre oblique entre deux mots et le support enfermé dans des mots / mots. Une donnée propre serait la suivante: p>
4 Réponses :
Vous pouvez essayer ceci.
\ w + code> correspond à n'importe quel caractère Word (égal à
[A-ZA-Z0-9 _] code>) P>
[i.strip('()') for s in lst for i in s.split('/')]
Utilisation de la compréhension de la liste:
a = ['Iraqi', 'Freedom/Operation', 'New', 'Dawn', 'and', 'Operation', 'Enduring', 'Freedom', '(Afghanistan),', 'have', '(other', 'than', 'call', 'publications)'] b = [ i.split('/') for i in a] b = [ i for row in b for i in row] b = [ i.strip().strip(',').strip('(').strip(')') for i in b] print(b) ['Iraqi', 'Freedom', 'Operation', 'New', 'Dawn', 'and', 'Operation', 'Enduring', 'Freedom', 'Afghanistan', 'have', 'other', 'than', 'call', 'publications']
Permettez-moi de nommer votre liste:
['Iraqi', 'Freedom', 'Operation', 'New', 'Dawn', 'and', 'Operation', 'Enduring', 'Freedom', 'Afghanistan,', 'have', 'other', 'than', 'call', 'publications']
Veuillez vérifier cela.
Bienvenue dans le débordement de la pile! Cela aiderait à savoir ce que vous avez fatigué jusqu'à présent en fonction de vos propres recherches;
re.sub code>,
str.replace code>, etc? Notez que nous demandons un exemple de reproductible minimal ici sur Stackoverflow