Methodcaller
suggest changeInstead of this lambda
-function that calls the method explicitly:
alist = ['wolf', 'sheep', 'duck']
list(filter(lambda x: x.startswith('d'), alist)) # Keep only elements that start with 'd'
# Output: ['duck']
one could use a operator-function that does the same:
from operator import methodcaller
list(filter(methodcaller('startswith', 'd'), alist)) # Does the same but is faster.
# Output: ['duck']
Found a mistake? Have a question or improvement idea?
Let me know.
Table Of Contents