In article <[email protected]>, Terry Reedy <[email protected]> wrote: >On 5/10/2010 5:35 AM, James Mills wrote: >> On Mon, May 10, 2010 at 6:50 PM, Xavier Ho<[email protected]> 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. -- Aahz ([email protected]) <*> http://www.pythoncraft.com/ f u cn rd ths, u cn gt a gd jb n nx prgrmmng. -- http://mail.python.org/mailman/listinfo/python-list
