Extract all words that begin with x

superpollo utente at esempio.net
Tue May 11 11:03:58 EDT 2010


Aahz ha scritto:
> In article <mailman.11.1273548189.32709.python-list at python.org>,
> Terry Reedy  <tjreedy at udel.edu> wrote:
>> On 5/10/2010 5:35 AM, James Mills wrote:
>>> On Mon, May 10, 2010 at 6:50 PM, Xavier Ho<contact at xavierho.com>  wrote:
>>>> Have I missed something, or wouldn't this work just as well:
>>>>
>>>>>>> list_of_strings = ['2', 'awes', '3465sdg', 'dbsdf', 'asdgas']
>>>>>>> [word for word in list_of_strings if word[0] == 'a']
>>>> ['awes', 'asdgas']
>>> I would do this for completeness (just in case):
>>>
>>>>>>> [word for word in list_of_strings if word and word[0] == 'a']
>>> Just guards against empty strings which may or may not be in the list.
>>  ... word[0:1] does the same thing. All Python programmers should learn 
>> to use slicing to extract a  char from a string that might be empty.
>> The method call of .startswith() will be slower, I am sure.
> 
> And if it is slower, so what?  Using startswith() makes for faster
> reading of the code for me, and I'm sure I'm not the only one.

also, what if the OP intended "words that begin with x" with x a string 
(as opposed to a single character) ?

then startswith is the solution methinks...

bye



More information about the Python-list mailing list