我有一个类似的清单
['hold', 'summit', 'septemb', '8', '9', '.', "'s", 'nancy-amelia', 'sydney', '.', 'energy', ',']
我想一次性删除此类列表中的所有整数,“。”,“s”,“逗号”,“双引号”中的引号,或者我只希望仅将字符串条目(例如,hold,summit等)保留在列表中并删除所有其他内容
预先感谢
最佳答案
>>> lst=['hold', 'summit', 'septemb', '8', '9', '.', "'s", 'nancy-amelia', 'sydney', '.', 'energy', ',']
>>> import re
>>> list(filter(lambda x:x, map(lambda x:re.sub(r'[^A-Za-z]', '', x), lst)))
['hold', 'summit', 'septemb', 's', 'nancyamelia', 'sydney', 'energy']
>>>