Skip to content
Related Articles

Related Articles

Improve Article

Python – Words Frequency in String Shorthands

  • Difficulty Level : Medium
  • Last Updated : 26 May, 2020

Sometimes while working with Python strings, we can have problem in which we need to extract frequency of all the words in string. This problem has been solved earlier. This discusses the shorthands to solve this problem as this has application in many domains ranging from web development and competitive programming. Let’s discuss certain ways in which this problem can be solved.

Input : test_str = ‘Gfg is best’
Output : {‘Gfg’: 1, ‘is’: 1, ‘best’: 1}

Input : test_str = ‘Gfg Gfg Gfg’
Output : {‘Gfg’: 3}

Method #1 : Using dictionary comprehension + count() + split()
The combination of above functions can be used to solve this problem. In this, we first split all the words and then perform count of them using count().




# Python3 code to demonstrate working of 
# Words Frequency in String Shorthands
# Using dictionary comprehension + count() + split()
  
# initializing string
test_str = 'Gfg is best . Geeks are good and Geeks like Gfg'
  
# printing original string
print("The original string is : " + str(test_str))
  
# Words Frequency in String Shorthands
# Using dictionary comprehension + count() + split()
res = {key: test_str.count(key) for key in test_str.split()}
  
# printing result 
print("The words frequency : " + str(res)) 
Output :



The original string is : Gfg is best . Geeks are good and Geeks like Gfg
The words frequency : {‘Gfg’: 2, ‘is’: 1, ‘best’: 1, ‘.’: 1, ‘Geeks’: 2, ‘are’: 1, ‘good’: 1, ‘and’: 1, ‘like’: 1}

 

Method #2 : Using Counter() + split()
The combination of above methods can also be used to solve this problem. In this, we perform the task of counting using Counter() and separation of words using split().




# Python3 code to demonstrate working of 
# Words Frequency in String Shorthands
# Using Counter() + split()
from collections import Counter
  
# initializing string
test_str = 'Gfg is best . Geeks are good and Geeks like Gfg'
  
# printing original string
print("The original string is : " + str(test_str))
  
# Words Frequency in String Shorthands
# Using Counter() + split()
res = Counter(test_str.split())
  
# printing result 
print("The words frequency : " + str(dict(res))) 
Output :

The original string is : Gfg is best . Geeks are good and Geeks like Gfg
The words frequency : {‘Gfg’: 2, ‘is’: 1, ‘best’: 1, ‘.’: 1, ‘Geeks’: 2, ‘are’: 1, ‘good’: 1, ‘and’: 1, ‘like’: 1}

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course




My Personal Notes arrow_drop_up
Recommended Articles
Page :