Python - Least Frequent Character in String Last Updated : 12 Jul, 2025 Comments Improve Suggest changes Like Article Like Report The task is to find the least frequent character in a string, we count how many times each character appears and pick the one with the lowest count.Using collections.CounterThe most efficient way to do this is by using collections.Counter which counts character frequencies in one go and makes it easy to find the least frequent character. Python from collections import Counter s = "GeeksforGeeks" freq = Counter(s) res = min(freq, key=freq.get) print(str(res)) Outputf Explanation:Counter(s): This creates a dictionary where each character in the string is a key, and the value is its frequency.min(freq, key=freq.get): This finds the character with the lowest frequency.Table of ContentUsing dictUsing SortingUsing str.count()Using dictUsing a dictionary, we count the frequency of each character in a single pass and directly find the least frequent character. This approach avoids re-scanning the string making it more efficient than naive methods. Python s = "GeeksforGeeks" d = {} # Initialize an empty dictionary for char in s: # Loop through each character in `s` d[char] = d.get(char, 0) + 1 res = min(d, key=d.get) print(str(res)) Outputf Explanation:d.get(char, 0): This retrieves the current frequency of char, defaulting to 0 if the character is not found.min(d, key=d.get): This finds the character with the lowest frequency in the dictionary d.Using SortingUsing sorting, we first count the frequency of each character in the string and then sort the characters by their frequency in ascending order. The least frequent character is extracted from the first element of the sorted list. Python s = "GeeksforGeeks" # Creating an empty dictionary d = {} # Counting the frequency of each character in the string for char in s: d[char] = d.get(char, 0) + 1 # Sorting `d` items by frequency sorted_freq = sorted(d.items(), key=lambda item: item[1]) # Extracting the least frequent character res = sorted_freq[0][0] print(res) Outputf Explanation:d[char] = d.get(char, 0) + 1: This checks if the character already exists in the dictionary d . If it does it increments its count, otherwise it initializes the count to 1.sorted(d.items(), key=lambda item: item[1]): This sorts the items in the dictionary by the frequency in ascending order.sorted_freq[0][0]: After sorting, the least frequent character is the first element in the sorted listsorted_freqand its character is extracted using [0][0].Using str.count()count()function counts the occurrences of each character and min() is used to identify the character with the lowest frequency. This approach is straightforward but becomes inefficient for larger strings due to its quadratic time complexity. Python s = "GeeksforGeeks" res = min(s, key=lambda char: s.count(char)) print(str(res)) Outputf Explanation:min(s, key=...): This finds the character with the minimum frequency in the string s .lambda char: s.count(char): For each character this lambda function calculates the frequency of that character in the string using s.count(char). Comment More infoAdvertise with us Next Article Python OOPs Concepts M manjeet_04 Follow Improve Article Tags : Python Python Programs Python string-programs Practice Tags : python Similar Reads Python Tutorial - Learn Python Programming Language Python is one of the most popular programming languages. Itâs simple to use, packed with features and supported by a wide range of libraries and frameworks. Its clean syntax makes it beginner-friendly. It'sA high-level language, used in web development, data science, automation, AI and more.Known fo 10 min read Python Interview Questions and Answers Python is the most used language in top companies such as Intel, IBM, NASA, Pixar, Netflix, Facebook, JP Morgan Chase, Spotify and many more because of its simplicity and powerful libraries. To crack their Online Assessment and Interview Rounds as a Python developer, we need to master important Pyth 15+ min read Python OOPs Concepts Object Oriented Programming is a fundamental concept in Python, empowering developers to build modular, maintainable, and scalable applications. OOPs is a way of organizing code that uses objects and classes to represent real-world entities and their behavior. In OOPs, object has attributes thing th 11 min read Python Projects - Beginner to Advanced Python is one of the most popular programming languages due to its simplicity, versatility, and supportive community. Whether youâre a beginner eager to learn the basics or an experienced programmer looking to challenge your skills, there are countless Python projects to help you grow.Hereâs a list 10 min read Python Exercise with Practice Questions and Solutions Python Exercise for Beginner: Practice makes perfect in everything, and this is especially true when learning Python. If you're a beginner, regularly practicing Python exercises will build your confidence and sharpen your skills. To help you improve, try these Python exercises with solutions to test 9 min read Python Programs Practice with Python program examples is always a good choice to scale up your logical understanding and programming skills and this article will provide you with the best sets of Python code examples.The below Python section contains a wide collection of Python programming examples. These Python co 11 min read Python Introduction Python was created by Guido van Rossum in 1991 and further developed by the Python Software Foundation. It was designed with focus on code readability and its syntax allows us to express concepts in fewer lines of code.Key Features of PythonPythonâs simple and readable syntax makes it beginner-frien 3 min read Python Data Types Python Data types are the classification or categorization of data items. It represents the kind of value that tells what operations can be performed on a particular data. Since everything is an object in Python programming, Python data types are classes and variables are instances (objects) of thes 9 min read Input and Output in Python Understanding input and output operations is fundamental to Python programming. With the print() function, we can display output in various formats, while the input() function enables interaction with users by gathering input during program execution. Taking input in PythonPython's input() function 7 min read Python Lists In Python, a list is a built-in dynamic sized array (automatically grows and shrinks). We can store all types of items (including another list) in a list. A list may contain mixed type of items, this is possible because a list mainly stores references at contiguous locations and actual items maybe s 6 min read Like