[Python] 파이썬 문자열 포맷팅 (% 연산자, format 함수, f-string) 사용법 & 예제

이번 포스팅에서는 파이썬에서 문자열 포맷팅 하는 방법에 대해 알아보려고 합니다. 그전에 문자열 포맷팅이 무엇인지 알 필요가 있을 것 같은데 문자열 포맷팅은 문자열을 지정된 포맷으로 맞춘다는 의미로 문자열에 값을 삽입하거나 형식을 지정하는 과정을 말합니다. 이를 통해서 변수나 상수의 데이터들을 문자열에 알맞게 배치하여 원하는 형식에 맞게 출력할 수 있습니다.

 

파이썬에서 문자열을 포맷팅 하는 방법은 연산자 %를 사용하는 방법, format 함수를 사용하는 방법, f-string을 사용하는 방법 이렇게 크게 3가지가 있습니다. 이번 포스팅에서 이 문자열 포맷팅을 하는 3가지 방법에 대해서 알아보도록 하겠습니다.

 


 

 % 연산자 사용하기 

name = "홍길동"
age = 30
height = 175.55
print("이름: %s, 나이: %d 키: %.2f" %(name, age, height))

결과 : 이름: 홍길동, 나이: 30 키: 175.55

 

  • 문자열 포맷팅: %s를 사용하여 문자열을 포맷팅 합니다.
  • 정수 포맷팅: %d를 사용하여 정수를 포맷팅 합니다.
  • 실수 포맷팅: %f를 사용하여 실수(부동 소수점)를 포맷팅 합니다. 소수점 자리를 지정하고 싶다면 %lf.n의 형태로 사용합니다.

C언어에서 사용하는 % 연산자를 사용하는 방법으로 연산자 %를 사용하고 그 뒤에 값을 붙이면 뒤에 붙은 값을 문자열 내에 삽입할 수 있습니다. 참고로 이 방법은 현재는 잘 사용하지 않는 방법입니다. 과거에 파이썬 2.x 버전에서 주로 사용되었으며 3.x버전으로 넘어온 현재에서는 아래의 다른 방법들이 더 권장됩니다.

 


 

 format 함수 사용법 

format() 메서드는 파이썬 문자열을 형식화하는 데 사용되는 강력한 도구입니다. 이 메서드를 사용하면 문자열에 변수, 숫자, 날짜 등을 쉽게 삽입하고 원하는 형식으로 출력할 수 있습니다. 아래에서 format() 메서드에 대해 자세히 설명하겠습니다.

 

format() 사용

name = "홍길동"
age = 30
height = 175.55
formatted_string = "이름: {}, 나이: {}, 키: {}".format(name, age, height)
print(formatted_string)

결과 : 이름: 홍길동, 나이: 30 키: 175.55

 

이 코드에서 format 함수는 기본적으로 % 대신에 {} 중괄호로 대체되었다고 생각하시면 이해가 쉽습니다. 자료형을 표시할 필요가 없고 자릿수에 맞춰 데이터가 삽입되므로 % 연산자보다 진보된 방식으로 평가됩니다. 

 

 

인덱스를 사용한 format() 메서드

name = "홍길동"
age = 25
formatted_string = "나이: {1}, 이름: {0}".format(name, age)
print(formatted_string)

결과 : 이름: 홍길동, 나이: 30

 

format() 메서드를 사용할 때 중괄호 안에 인덱스를 지정하여 어떤 값을 어떤 위치에 삽입할지 지정할 수도 있습니다. 이 코드에서 {0}는 첫 번째 인수 name을, {1}은 두 번째 인수 age를 나타냅니다.

 

 

이름을 사용한 format() 메서드

name = "홍길동"
age = 28
formatted_string = "이름: {name}, 나이: {age}".format(name=name, age=age)
print(formatted_string)

결과 : 이름: 홍길동, 나이: 30

 

파이썬 3.1부터는 변수나 키워드 인수의 이름을 사용하여 format() 메서드를 사용할 수 있습니다. 이를 통해 가독성을 높일 수 있습니다.

 


 

 f-string 사용하기 

f-string() 사용

name = "홍길동"
age = 30
height = 175.55
formatted_string = f"이름: {name}, 나이: {age}, 키: {height}"
print(formatted_string)

결과 : 이름: 홍길동, 나이: 30 키: 175.55

 

파이썬 3.6부터는 f-string이라는 것을 사용할 수 있습니다. f-string은 문자열의 앞에 f 글자를 붙인 문자열을 의미하며 {} 안에서 변수의 이름을 바로 사용할 수 있기 때문에 가독성도 높고 편리하여 가장 진보된 방식으로 평가됩니다.

 

 

f-string 소수점 자릿수 지정하기

pi = 3.14159

# 원주율을 소수점 둘째 자리까지 포맷팅하여 출력합니다.
formatted_pi = f"원주율: {pi:.2f}"
print(formatted_pi)

결과 : 원주율: 3.14

 

f-string에서 소수점 자릿수를 지정하고 싶다면 위와 같이 변수명:.nf형태로 사용하시면 됩니다. 위의 예제를 보시면 "원주율: 3.14"와 같은 형식으로 원주율이 포맷팅 되어 출력되는 것을 보실 수 있습니다.

 

댓글

Designed by JB FACTORY