I’m looking to ‘clean’ a list by excluding any items which contain characters other than 0-9, and wondering if there’s a more efficient way than e.g.
import re
invalid = re.compile('[^0-9]')
ls = ['1a', 'b3', '1']
cleaned = [i for i in ls if not invalid.search(i)]
print cleaned
>> ['1']
As I’m going to be operating on large-ish lists (5k items) of long strings (15 chars).
Anything wrong with the string method
isdigit?