item cuenta de frecuencia en python

Soy un novato en Python, así que tal vez mi pregunta es muy novata. Suponga que tengo una lista de palabras y quiero encontrar la cantidad de veces que aparece cada palabra en esa lista. La forma obvia de hacer esto es:

words = "apple banana apple strawberry banana lemon"
uniques = set(words.split())
freqs = [(item, words.split.count(item)) for item in uniques]
print(freqs)

Pero encuentro que este código no es muy bueno, porque de esta manera el programa se ejecuta en la lista de palabras dos veces, una vez para construir el conjunto y la segunda vez contando el número de apariciones. Por supuesto, podría escribir una función para ejecutar la lista y hacer el conteo, pero eso no sería tan pitónico. Entonces, ¿hay una manera más eficiente y pitónica?

Respuestas a la pregunta(22)

Su respuesta a la pregunta