본문 바로가기

언어/Python

[ Python ] %를 사용한 포맷팅하기

반응형

파이썬에서 % 기호를 사용한 문자열 포매팅은 오래된 방식이지만 여전히 유용할 수 있습니다. % 기호를 사용하면 C 언어 스타일의 포맷 문자열을 사용하여 문자열을 포맷할 수 있습니다. 다음은 기본적인 사용 방법과 예제들입니다.

1. 기본 문법

"포맷 문자열" % (값1, 값2, ...)

2. 포맷 코드

여러 포맷 코드가 있으며, 자주 사용하는 것들은 다음과 같습니다:

  • %s: 문자열
  • %d: 정수
  • %f: 부동 소수점
  • %%: 문자 % 자체

3. 예제

  1. 문자열 포맷팅
name = "Alice"
greeting = "Hello, %s!" % name
print(greeting)  # 출력: Hello, Alice!
  1. 정수 포맷팅
age = 25
message = "I am %d years old." % age
print(message)  # 출력: I am 25 years old.
  1. 부동 소수점 포맷팅
pi = 3.141592653589793
formatted_pi = "Pi is approximately %.2f." % pi
print(formatted_pi)  # 출력: Pi is approximately 3.14.
  1. 여러 값 포맷팅
name = "Bob"
age = 30
introduction = "My name is %s and I am %d years old." % (name, age)
print(introduction)  # 출력: My name is Bob and I am 30 years old.
  1. %를 문자로 사용하기
discount = 50
message = "Get a %d%% discount now!" % discount
print(message)  # 출력: Get a 50% discount now!

4. 고급 예제

서식을 지정할 때 폭과 정밀도를 지정할 수도 있습니다.

number = 123.456
formatted_number = "Number: %10.2f" % number  # 폭 10, 소수점 이하 2자리
print(formatted_number)  # 출력: Number:     123.46

5. 요약

% 포맷팅은 직관적이고 간단하게 사용할 수 있지만, 복잡한 문자열 포맷팅이 필요할 경우 최신의 str.format() 메서드나 f-strings (파이썬 3.6 이상) 사용을 권장합니다. 이 방법들은 더 강력하고 읽기 쉬운 문법을 제공합니다.

# str.format() 예제
name = "Charlie"
age = 35
introduction = "My name is {} and I am {} years old.".format(name, age)
print(introduction)

# f-strings 예제 (Python 3.6+)
name = "Dave"
age = 40
introduction = f"My name is {name} and I am {age} years old."
print(introduction)

이렇게 여러 가지 방법을 활용하여 파이썬에서 문자열을 포맷할 수 있습니다.

반응형