Python Convert Snake case to Pascal case (original) (raw)

Last Updated : 1 Nov, 2025

Given a string in snake_case, the task is to convert it into PascalCase, where each word starts with an uppercase letter and there are no underscores.

**For Example:

Input: geeksforgeeks_is_best
Output: GeeksforgeeksIsBest

Let’s explore different methods to convert a string from snake case to Pascal case in Python.

Using split() and capitalize()

This method splits the string by underscores, capitalizes each word and then joins them back together. It is efficient in terms of both time and readability.

Python `

s= 'geeksforgeeks_is_best' res = ''.join(word.capitalize() for word in s.split('_')) print(res)

`

Output

GeeksforgeeksIsBest

**Explanation:

Using str.title() and replace()

This method converts a snake case string into pascal case by replacing underscores with spaces and capitalizing the first letter of each word using the title() function. After capitalizing, the words are joined back together without spaces.

Python `

s = 'geeksforgeeks_is_best' res = s.replace("_", " ").title().replace(" ", "") print(res)

`

Output

GeeksforgeeksIsBest

**Explanation:

Using string.capwords()

The capwords() function from the string module automatically capitalizes words separated by spaces. We can first replace underscores with spaces, then use capwords() and finally remove spaces.

Python `

import string s = 'geeksforgeeks_is_best' res = string.capwords(s.replace('_', ' ')).replace(' ', '') print(res)

`

Output

GeeksforgeeksIsBest

**Explanation:

Using re.sub()

Regular expressions are highly flexible and can be used to replace underscores and capitalize the first letter of each word efficiently.

Python `

import re s= "geeksforgeeks_is_best" res= re.sub(r"(^|_)([a-z])", lambda match: match.group(2).upper(), s) print(res)

`

Output

GeeksforgeeksIsBest

**Explanation: