[python] count words in a text

nitwit

nitiwit

Posted on July 21, 2024

[python] count words in a text

I recently discovered a one-liner to count the words from a text in python:

text = "Tags help people find your post - think of them as the topics or categories that best describe your post."

from collections import Counter

words = Counter(text)[" "] #19
Enter fullscreen mode Exit fullscreen mode

to put it more accurately, this counts the number of spaces (" ") in a text.

moreover, Counter is a python mapping that creates a dict in which keys are every unique letter from a text, and the corresponding values are the number of occurrences of that letter.

a mapping is an iterable container with a fixed length. this means three things (accordingly):

  1. you can loop through its items
  2. you can check existence of an item using in keyword (e.g., "x" in words)
  3. len(words) returns an integer

in other words, it comes with these dunder methods (again, accordingly):

  1. __getitem__(): can access item using dct["key"] notation
  2. __iter__(): return an iterator object to be used in a for loop
  3. __len__(): defines the behavior of len()
💖 💪 🙅 🚩
nitwit
nitiwit

Posted on July 21, 2024

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related