как удалить пробел и специальный символ из списка в python

#python #python-3.x

#python #python-3.x

Вопрос:

у меня есть список, подобный:

 
['BOOL_CONST_GROUP                                                                                                        |                |n', 
 'BOOL_GROUP                                                                                                              |                |n', 
 'BOOL_TEXT_GROUP                                                                                                         |                |n', 
 'FIXED_DATA_GROUP                                                                                                        |                |n', 
 'PATTERN_PF0                                                                                                             |                |n', 
 'BOOL_Partition                                                                                            |                |n', 
 'VVS_Data_Z_Partition                                                                                                    |                |n']
  

мне нужен этот список для преобразования как :

 ['BOOL_CONST_GROUP', 
 'BOOL_GROUP ', 
 'BOOL_TEXT_GROUP ', 
 'FIXED_DATA_GROUP', 
 'PATTERN_PF0 ', 
 'BOOL_Partition', 
 'VVS_Data_Z_Partition ']
  

Я попробовал это:

 l1 = [i for i in l1 if i]
  

Также я пробовал это , но не работает

 ''.join(e for e in l1[1] if e.isalnum())
  

Комментарии:

1. l1 = [i.split(«)[0] для i в l1], используйте вот так, вы найдете свой ответ.

Ответ №1:

Вы можете использовать следующим образом,

 a = ['BOOL_CONST_GROUP                                                                                                        
|                |n', 
 'BOOL_GROUP                                                                                                              
|                |n', 
'BOOL_TEXT_GROUP                                                                                                         
|                |n', 
 'FIXED_DATA_GROUP                                                                                                        
|                |n', 
 'PATTERN_PF0                                                                                                             
|                |n', 
 'BOOL_Partition                                                                                            
|                |n', 
 'VVS_Data_Z_Partition                                                                                                    
|                |n']

a = [i.split('')[0] for i in a]
print(a) 
  

Результат такой, какой вы хотите.

Ответ №2:

Попробуйте это:

     import re
    x=['BOOL_CONST_GROUP                                                                                                        |                |n', 
     'BOOL_GROUP                                                                                                              |                |n', 
     'BOOL_TEXT_GROUP                                                                                                         |                |n', 
     'FIXED_DATA_GROUP                                                                                                        |                |n', 
     'PATTERN_PF0                                                                                                             |                |n', 
     'BOOL_Partition                                                                                            |                |n', 
     'VVS_Data_Z_Partition                                                                                                    |                |n']
    
     x=[re.sub('[^A-Za-z0-9] ','',i) for i in x]
     print(x)