Stefan Behnel ha scritto:
superpollo, 11.05.2010 17:03:
Aahz ha scritto:
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.

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

    word[:len(x)] == x

will work in that case.

yes ... thanks.
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to