파이썬 공부 (★ My Main)/개념 공부

2023.12.28 파이썬 포맷팅(1)

코딩입문시작 2024. 2. 5. 18:39

★ 문자열 포맷팅 ★ (학교 파이썬 프로그래밍 수업에서 중요하게 다뤘던 부분 + 파이썬에서 중요 파트!)

문자열을 작성 후 숫자나 특정 문자열을 수정하고 싶은데 그냥 " " 안에 문자열을 때려박으면, 과연 수정할 수 있을까? 그렇지 않다. 문자열 안의 특정한 값을 바꿔야 할 경우가 있을 때 이것을 가능하게 해주는 것이 바로 문자열 포맷팅 기법이라고 한다. 쉽게 말하여, 문자열 포맷팅이란 문자열 안에 어떤 값을 삽입하는 방법이다. 

## 포맷팅
a = "I eat %d apples." % 3
print(a)

b = "I eat " + str(3) + " apples."
print(b)

c = "I eat 3 apples."
print(c)

 

여기에서 %d 는 문자열 포맷 코드라고 부른다. 

출력값

여러개가 들어갈 때에는, 괄호를 사용한다.
 
number = 10
day = "three"
d = "I ate %d apples. So I was sick for %s days." % (number, day)
print(d)

%d는 정수, %f는 실수, %s는 문자열
%c는 문자 1개, %o는 8진수, %x는 16진수, %%는 % 문자 자체를 쓰기위함.
# TIP : %s는 문자열이라고 되어있지만, 숫자넣어도 인식이 가능하다.

 

코드 설명
%s 문자열
%c 문자 1개
%d 정수
%f 부동 소수 (실수)
%o 8진수
%x 16진수
%% 문자 '%' 자체

 

정렬과 공백 

a = "%s" % "Hi"
print(a)

%와 s 사이에 숫자가 들어가면 숫자만큼의 공백이 생긴다. 칸 조절이 가능하다.
마이너스가 붙으면 왼쪽정렬이다.
b = "%10s" % "Hi"
d = "%-10s" % "Hi"

print(b)
print(d)

## %0.4f를 예시로 들면, 0은 간격을 말하고 4는 소수점 남기는 자리수를 의미한다.

c = "%0.4f" % 3.42134234
print(c)  ## 3.4213 출력
 
## %를 출력하고 싶다면, %% 두번을 사용하여 출력가능하다.


※ 위에서 10은 칸 수이다. 단, HI가 들어간다면 2칸은 이미 문자열로 채워지고 8칸 만이 공백으로 자리잡는 것이다.