In article <mailman.11.1273548189.32709.python-l...@python.org>, Terry Reedy <tjre...@udel.edu> wrote: >On 5/10/2010 5:35 AM, James Mills wrote: >> On Mon, May 10, 2010 at 6:50 PM, Xavier Ho<cont...@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. -- Aahz (a...@pythoncraft.com) <*> 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