Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python에서 문자열의 첫 글자를 대문자로 변환하는 방법 총정리

Python에서 문자열 첫 글자를 대문자로 변환하는 방법

Python에서 문자열을 다룰 때 첫 글자만 대문자로 바꾸거나, 각 단어의 첫 글자를 모두 대문자로 변환해야 하는 경우가 자주 있습니다. 상황에 따라 capitalize(), 문자열 슬라이싱, title(), upper() 등 다양한 방법을 활용할 수 있습니다.

1. capitalize() 메서드로 첫 글자만 대문자로 변환

문자열의 맨 앞 글자만 대문자로 바꾸고 나머지는 소문자로 유지하고 싶다면, 문자열 클래스의 capitalize() 메서드를 사용하면 됩니다.

>>> s = "my name"
>>> s.capitalize()
'My name'

capitalize()는 첫 글자를 대문자로 만들고, 나머지 모든 문자를 자동으로 소문자로 변환한다는 점에 유의하세요.

2. 문자열 슬라이싱으로 직접 구현하기

메서드를 사용하지 않고 문자열 슬라이싱(slicing)을 이용해 동일한 결과를 얻을 수도 있습니다. 첫 번째 문자만 추출해 대문자로 변환한 뒤, 나머지 부분과 연결하는 방식입니다.

>>> s = "my name"
>>> s = s[:1].upper() + s[1:]
>>> s
'My name'

이 방법은 첫 글자만 대문자로 바꾸고 나머지 문자의 원래 대소문자는 그대로 유지하고 싶을 때 특히 유용합니다.

3. title() 메서드로 각 단어의 첫 글자를 대문자로 변환

문자열 내 모든 단어의 첫 글자를 대문자로 만들고 싶다면 title() 메서드를 사용하는 것이 가장 간단합니다.

>>> s = "my name"
>>> s.title()
'My Name'

title()은 공백뿐만 아니라 하이픈(-)이나 숫자 뒤의 문자도 새로운 단어의 시작으로 인식한다는 점을 참고하세요.

4. 보너스: upper()로 문자열 전체를 대문자로 변환

첫 글자가 아니라 문자열 전체를 대문자로 바꾸고 싶다면 upper() 메서드를 사용하면 됩니다.

>>> s = "my name"
>>> s.upper()
'MY NAME'

정리

  • capitalize(): 첫 글자만 대문자, 나머지는 소문자로 변환
  • 슬라이싱 + upper(): 첫 글자만 대문자로 바꾸고 원래 대소문자 유지
  • title(): 각 단어의 첫 글자를 모두 대문자로 변환
  • upper(): 문자열 전체를 대문자로 변환

상황에 맞는 메서드를 선택하면 Python에서 문자열 대소문자 처리를 훨씬 효율적으로 할 수 있습니다.