코딩/파이썬

[Python] 문자열 서식 지정, 포매팅 방식 및 format 함수

손느린 프로그래머 2023. 7. 30. 13:25
반응형

Python에서 가장 자주 다루는 함수가 print와 문자열입니다. Python에서 제공하는 다양한 포매팅 형식을 안다면, print와 문자율을 훨씬 편리하고 유려하게 사용할 수 있습니다. 이번 글에서는 Python의 문자열 서식 지정과 포매팅, 그리고 format 함수의 사용법에 대해 쉽게 이해할 수 있도록 설명해보겠습니다. 

 

 

 


Python에서 문자열 서식 지정하는 방법

파이썬에서는 다양한 방식의 문자열 서식을 지원합니다.

 


예제 1. 고전적인 % 연산자를 사용한 포매팅

c 부터 내려오는 고전적인 포메팅 방식도 python에서 지원합니다. 아래 예시를 보십시요. %d는 정수(decimal)를 의미하며, 이 위치에 age 변수의 값을 삽입합니다

age = 20
print("나는 %d살이다." % age)

# 출력 : 나는 20살이다.

 

예제 2. str.format() 함수를 사용한 포매팅

아래 코드에서 {}는 문자열에 삽입될 값을 표시하는 공간입니다. format() 함수를 이용해 이 공간에 age 변수의 값을 삽입할 수 있습니다.

age = 20
print("나는 {}살이다.".format(age))

여러 개의 변수를 사용할 수도 있습니다. 

name = 'John'
age = 25
print("Hello, {}. You are {} years old.".format(name, age))

# 출력 : Hello, John. You are 25 years old.

또한 복잡한 포멧을 위해서 키워드 인자도 사용할 수 있습니다. 아래 예시에서 {kwd} 형태로 지정되고, kwd의 변수 값을 찾아서 출력합니다. 

print("Hello, {name}. You are {age} years old.".format(name='John', age=25))

# 출력 : Hello, John. You are 25 years old.

 

예제 3. f-string을 사용한 포매팅

아래 코드에서 f-string은 Python 3.6부터 도입된 방식으로, 문자열 앞에 f를 붙여 사용합니다. {} 안에 변수 이름을 바로 쓸 수 있는 것이 특징입니다.

age = 20
print(f"나는 {age}살이다.")

 


 

Python에서 포멧팅 예시

Python에서 서식 지정을 할 때, 데이터의 형태를 조절하는 것이 가능합니다. 주로 숫자를 다룰 때 이 기능이 유용하게 사용됩니다. 아래에 자주 사용되는 형식 지정자와 예제를 설명하겠습니다.

 

예제 1. 소수점 아래 둘째 자리까지 출력

{:.nf} 형식을 사용하면 소수점 아래 n자리까지 출력할 수 있습니다. 여기서 n은 원하는 자릿수를 의미합니다.

pi = 3.1415926535
print("{:.2f}".format(pi))

# 출력 : 3.14

 

예제 2. 정수 자릿수 지정

{:nd} 형식을 사용하면 정수를 n자리로 출력할 수 있습니다. 여기서 n은 원하는 자릿수를 의미합니다. 만약 출력할 값이 n자리보다 작다면 앞쪽은 공백으로 채워집니다.

 

num = 12
num2 = 123
num3 = 12345

print("{:5d}".format(num))
print("{:5d}".format(num2))
print("{:5d}".format(num3))

아래는 실제 출력결과 입니다. 숫자 5자리수에 맞춰서 숫자를 정렬합니다.

 

예제 3. 정수 부분을 5자리로 출력하고 빈 공간은 0으로 채우기

{:0nd} 형식을 사용하면 정수를 n자리로 출력하며, 앞쪽이 공백이면 0으로 채웁니다.

num = 93
print("{:05d}".format(num))

# 출력 : 00093

이 코드를 실행하면 "00093"라는 결과가 출력됩니다.

 

 

예제 4. 천 단위로 콤마 삽입하기

{:,} 형식을 사용하면 천 단위마다 콤마를 삽입할 수 있습니다.

 

num = 93000000
print("{:,}".format(num))

# 출력 : 93,000,000



 

 

마무리

이상 파이썬 포멧팅에 대한 내용이었습니다.

 

 

https://smart-worker.tistory.com/53

 

[Python] JSON 데이터 손쉽게 다루기

JSON은 많은 웹 및 모바일 어플리케이션에서 사용되는 가벼운 데이터 형식입니다. 이번 포스팅에서는 JSON이 무엇인지 그리고 Python에서 어떻게 JSON 데이터를 다루는지에 대해 알아보겠습니다. 목

smart-worker.tistory.com

 

 

https://smart-worker.tistory.com/52

 

[Python] 텍스트 파일 읽고 쓰기(open, readlines 등)

파이썬을 사용하다보면 텍스트 파일을 읽고 저장해야할 때가 많습니다. Python은 텍스트 파일을 다루는 방법이 매우 직관적이며, 유연성이 있습니다. 본 포스트에서는 Python에서 파일을 다루는 방

smart-worker.tistory.com

 

https://smart-worker.tistory.com/50

 

[Python]람다(lambda) 함수 이해하기

이 글에서는 Python 프로그래밍 언어에서 사용되는 람다(lambda) 함수에 대해 배울 것입니다. 초보자 분들도 쉽게 이해할 수 있도록 기본적인 개념부터 실제 사용 사례까지 자세히 설명하겠습니다.

smart-worker.tistory.com

 

반응형