str.capitalize() Capitalize first
Last updated: 2026-09-22
str.capitalize() Capitalize first
str.capitalize() upper-cases the first letter and lower-cases the rest.
| Category | String Methods |
|---|---|
| Kind | Built-in Type Method |
| Python Version | all |
📝 Syntax
str.capitalize()
Returns:str. A new string with the first character uppercased and the rest lowercased.
Mutates the original:No (returns a new object)
▶ Example
Edit the code, press Run, and see the result in the output panel:
Output:
Hello world
中文 test
💡 Related Cases
More case studies coming soon — check back later.
❓ FAQ
QDoes capitalize() modify the original string?
ANo. Strings are immutable; capitalize() returns a new string and leaves the original unchanged. To keep the result you must reassign it, e.g. s = s.capitalize().
QWhat is the result of 'hello WORLD'.capitalize()?
AThe result is 'Hello world'. It makes only the first character uppercase and converts all remaining letters to lowercase, so the trailing WORLD becomes world.
QCan I capitalize the first letter of every word with capitalize()?
ANo. capitalize() only handles the first character of the whole string; words later in a multi-word sentence are not capitalized. To capitalize the first letter of each word, use str.title().
QWhat happens when the string is Chinese or empty?
AIt does not raise an error. An empty string returns an empty string; Chinese characters have no case, so '中文 test'.capitalize() keeps the first Chinese character as-is and still lowercases the English part that follows.