list comparison help?
wojciech_mula at poczta.null.onet.pl.invalid
Sat Apr 14 11:49:47 CEST 2007
Dropkick Punt wrote:
>>>> prefixes = [ "the", "this", "that", "da", "d", "is", "are", "r", "you", "u"]
> And I have a string, that I split() into a list.
>>>> sentence = "what the blazes is this"
>>>> sentence = sentence.split()
> Now I want to strip the sentence of all words in the prefix list.
> I tried this method:
>>>> for x in prefixes:
> ... if sentence.index(x):
> ... del sentence[sentence.index(x)]
> This raises, the error:
> Traceback (most recent call last):
> File "<stdin>", line 3, in ?
> ValueError: list.index(x): x not in list
> This puzzles me, because if x isn't in the list, the subroutine shouldn't attempt to delete it
> from the list, so I'm not sure why it's complaining.
list.index raised ValueError, see error message.
> Can anybody explain this to me, &/or show me a better way to do it?
prefixes = set(prefixes)
sentence = [word for word in sentence.split() if word not in prefixes]
More information about the Python-list