Combine similar characters in Python using Dictionary Get() Method
Last Updated :
14 Apr, 2022
Let us see how to combine similar characters in a list.
Example :
Input : ['g', 'e', 'e', 'k', 's', 'f', 'o', 'r', 'g', 'e', 'e', 'k', 's']
Output : ['gg', 'eeee', 'kk', 'ss', 'f', 'o', 'r']
We will be using the get() method of the dictionary class.
dictionary.get()
The get() method returns the value of the item with the specified key.
Syntax : dictionary.get(key name, value)
Parameters :
- keyname : The key name of the dictionary item.
- value : (Optional) If the specified key does not exist, then a value is returned.
Returns : Value of the item with the specified key
Algorithm :
- Declare the list.
- Declare a dictionary.
- Iterate over the list, using the get() method, if a new key is found, then the value 0 is assigned to it and 1 is added making the final value 1. Else if the key is repeated, then 1 is added to the previously calculated value. So this way, now each key has a value assigned to it, and frequency of all characters is recorded.
- Separate all the keys and the values and store them in 2 different lists.
- Use the zip() function store the product of keys and their respective values in the result list.
- Display the result.
Example 1 :
python3
# declaring the list of characters
mylist = ['g', 'e', 'e', 'k', 's', 'f',
'o', 'r', 'g', 'e', 'e', 'k', 's']
# declaring the dictionary
dictionary = {}
# counting the frequency of the keys
for key in mylist:
dictionary[key] = dictionary.get(key, 0) + 1
# storing the of keys and values
k = list(dictionary.keys())
v = list(dictionary.values())
# declaring the result list
result = []
# storing the product of keys and
# their respective values in result
for i, j in zip(k, v):
result.append(i * j)
# displaying the result
print(result)
Output :
['gg', 'eeee', 'kk', 'ss', 'f', 'o', 'r']
Example 2 :
python3
# declaring the list of characters
mylist = ['p', 'y', 't', 'h', 'o', 'n', 't',
'u', 't', 'o', 'r', 'i', 'a', 'l']
# declaring the dictionary
dictionary = {}
# counting the frequency of the keys
for key in mylist:
dictionary[key] = dictionary.get(key, 0) + 1
# storing the of keys and values
k = list(dictionary.keys())
v = list(dictionary.values())
# declaring the result list
result = []
# storing the product of keys and
# their respective values in result
for i, j in zip(k, v):
result.append(i * j)
# displaying the result
print(result)
Output :
['a', 'h', 'i', 'l', 'n', 'oo', 'p', 'r', 'ttt', 'u', 'y']
Similar Reads
Python | Words extraction from set of characters using dictionary Given the words, the task is to extract different words from a set of characters using the defined dictionary. Approach: Python in its language defines an inbuilt module enchant which handles certain operations related to words. In the approach mentioned, following methods are used. check() : It che
3 min read
Replacing Characters in a String Using Dictionary in Python In Python, we can replace characters in a string dynamically based on a dictionary. Each key in the dictionary represents the character to be replaced, and its value specifies the replacement. For example, given the string "hello world" and a dictionary {'h': 'H', 'o': 'O'}, the output would be "Hel
2 min read
Convert a List of Characters into a String - Python Our task is to convert a list of characters into a single string. For example, if the input is ['H', 'e', 'l', 'l', 'o'], the output should be "Hello".Using join() We can convert a list of characters into a string using join() method, this method concatenates the list elements (which should be strin
2 min read
Print anagrams together in Python using List and Dictionary An anagram is a word or phrase formed by rearranging the letters of another word or phrase, using all the original letters exactly once. The task of grouping anagrams together in Python can be efficiently solved using lists and dictionaries. The key idea is to process each word by sorting its charac
2 min read
Map function and Dictionary in Python to sum ASCII values We are given a sentence in the English language(which can also contain digits), and we need to compute and print the sum of ASCII values of the characters of each word in that sentence. Examples: Input : GeeksforGeeks, a computer science portal for geeksOutput : Sentence representation as sum of ASC
2 min read