본문 바로가기

Developer

파이썬 프로그래밍 - format 함수 사용법, 실습 11가지 (%d, %s, %f )

파이썬 인강으로 독학중인 펀조조입니다.

 

지난 시간까지는 파이썬 프로그래밍 Print 문법 활용 중 format 을 공부했는데요.

오늘은 format 에서 %s, %d, %f 이용한 함수를 이용해서

11가지의 실습을 해 보겠습니다.

 

실습한 파이썬 파일은 따로 링크를 걸어 올려두었으니

필요하신 분은 다운로드 하시면 됩니다. (밑에 있습니다)

 

아톰을 키고, 아래 있는 내용대로 그대로~ 따라해보세요!

묻지도 따지지도 말고 그냥 해봅시다!

Just do it!

 

 

 

#format (*d, s, f 를 알아두세요!!)

- d : 정수 (ex. 3,4,5,)

- S : 문자 (ex. 'python')

- f : 실수 (ex. 3.144545...)


실습 #1. %s 문자를 이용한 출력

 

>> Print('%10s' % ('love'))

: 위 수식에서 10은 총 자릿수를 의미합니다.

s는 문자가 오는것을 의미하죠.

즉, 총 10개의 자리를 확보하고

 

'love' 라는 텍스트가 4글자니까

총 10개의 자릿수 중에 'love'(4칸)를 출력하고 

왼쪽부터 남은 여섯칸이 공백으로 처리가 되었습니다.

 

#1. love 앞에 생긴 6자리 공백


실습 #2.

 

>> Print('%10s' % ('happy'))

: 10자리를 확보하고 나머지는 왼쪽부터 공백으로 채워서 시작한다.

 

>> Print('{:>10}' .format ('happy'))

: 왼쪽이라고 기호를 표시해주고 10자리를 확보해주고 Happy 로 포맷을 해준다.

 

#2. 같은 결과값이 나옵니다.

 


실습 #3. %s

 

>> Print('%10s' % ('happyland'))

: 문자를 happy(5글자)에서 happyland(9글자) 로 늘려볼게요.

 

>> Print('{:>10}'.format ('happy')) : 이건 그대로 유지

 

#3. 10자리 글자에 공백을 맞출 수 있도록 세팅됩니다.

위와 같은 결과값이 나옵니다.

10자리 글자에 공백을 맞출 수 있도록 자동 세팅됩니다.

happyland 앞에는 스페이스 한 칸의 공백이 생겼고

happy 앞에는 다섯칸의 공백이 생깁니다.

 


실습 #4. 공백을 오른쪽에 주고 싶을 때

 

1) Print('%-10s' % ('happy')) 

: 마이너스 기호를 넣어주고

2) Print('{:10}' .format ('happy'))

: 부등호(>) 기호를 없애줍니다.

 

결과값은?

#4. 글자가 왼쪽부터 시작되고 공백이 오른쪽으로 채워졌습니다.

설명 1) 음수가 왔을때는 나머지 공백 부분을 오른쪽부터 채우고, 양수가 왔을때는 왼쪽부터 공백을 채웁니다. 공백으로 채운 뒤 그 나머지를 우리가 입력한 텍스트로 채우는 겁니다.

 

설명 2) 반대로 왼쪽 기호(>)일때는 왼쪽에 공백, 부등호 기호 생략하면 오른쪽에 공백을 두는 것!

 

 


실습 #5. 공백 대신 다른 문자로 채우기

 

>> Print('{:_>10}'.format ('happy'))

: >왼쪽에 언더바(_)를 붙여봅니다.

 

>> Print('{:$>10}' .format ('happy'))

: >왼쪽에 달러($)를 붙여붑니다.

 

결과값

#5. 언더바와 $가 왼쪽에 다섯개 채워진 결과값


실습 #6. 중앙정렬 하는 방법 ^ 추가

>> Print('{:^10}' .format ('happy'))

: 10개의 자릴수를 맞추고 happy를 중앙 가운데 정렬 시킨다

 

#6. love 문자가 가운데로 정렬되었습니다.


실습 #7. 쩜 붙이기 = 절삭

 

Print('%.8s' % ('happyland')) : 8자리 공간 확보후 절삭

Print('%.5s' % ('happyland')) : 5자리 공간 확보후 절삭

Print('%.3s' % ('happyland')) : 3자리 공간 확보 후 절삭

 

.을 붙이면 절삭을 합니다.

수학으로 따지면 반올림, 절삭되는 것과 같습니다.

s가 문자기 때문에 반올림 개념은 아니고 내가 원하는 자릿수만큼

왼쪽부터 n글자만 딱 출력이 되고 멈춥니다.

아래 결과값을 참고하면 이해가 잘 될거에요.

 

#7. 쩜 붙이고 숫자 = 그 자릿수만큼 지킨 뒤 나머지 절삭

 

실습 #8. format 함수 활용

- N자리까지 문자 절삭 후 공백 확보

 

print('{:10.5}' .format ('minionslove'))

: 10자리의 자리를 확보하고 왼쪽에서 5자리까지 글자만 나오고 나머지 글자는 절삭한다. (나머지 5자리 공백)

 

print('{:10.9}' .format ('minionslove'))

: 10자리의 자리를 확보하고 왼쪽에서 9자리까지 절삭한다. (1자리 공백)

 

#8. 10자리의 자리 확보 후 .N 값만큼 문자 출력 후 절삭

1


실습 #9.  %d 활용 (d: 정수)

 

print('%d %d' % (1,2))

print('{} {}' .format(1,2))

 

2개의 정수를 출력합니다.

#9-1. 2개의 정수를 출력합니다.

실습 #9-1.  %d 응용

>> print('%4d' % (42))

>> print('{:4d}' .format(42))

: 4자리를 확보하고 d(정수) 를 넣는다

 

#9-2. 4자리를 확보하고 정수(d)를 넣습니다


실습 #10.  %f (f:실수)

1) print('%f' % (3.14143242225))

#10-1. 기본 소수점 뒤 6자리까지 나옵니다.

2) print('%1.8f'%(3.143434343434))

: 쩜 앞에는 정수부, 쩜 뒤에는 소수부 제어

 

앞에 부분은 정수 한자리고 나머지는 소수부인데 이것도 따로 지정할 수 있습니다.

쩜 앞에 정수부는 한 자리만 나오고 점 뒤에 나오는 소수부는 8자리까지 나와라 하면?

 

#10-2. '%1.8f' = 정수는 한자리, 소수점 뒤에는 8자리까지 나옵니다

 

 

3)

>> print('%f' % (3.14143242225))

>> print('{:f}'.format(3.143434343434))

 

#10-3. 같은 값이 출력됩니다.

실습 #11.  %f (f:실수) 응용편

 

>> print('%06.2f' % (3.141592653589763))

: 정수부분은 6자리가 나온다고 했고 소수점 뒤로는 둘째까지 나오라고 하는것.

정수부는 여섯자리로 나오는데 정수가 3으로 한 자리기 때문에 총 여섯자리기에 공간은 여섯개가 맞음

그리고 정수부는 하나이기에 나머지는 0으로 채움.

총 자릿수를 이렇게 앞의 것으로 지정할 수 있다는 것 (ex. 06부분)

>> 총 여섯개 중에서 정수부는 하나이기 때문에 나머지는 0으로 채우고 그 다음에 소수점 뒤 2개가 나온 것

#11-1. 정수부분 

 

 

이걸 그대로 풀어쓰면?

 

>> print('%06.2f' % (3.141592653589763))

>> print('{:06.2f}'.format(3.141592653589763))

같은 값이 출력됩니다.

 

#11-2. 같은 값이 출력이 됩니다.


요약하자면, 헷갈리면 안되는게 문자열일때는 익스프레션 표현식에서는 그냥 s 생략하고 써줘도 된다는거 (s생략)

같은 값이죠. 문자 (S) 는 format 함수 활용 시 생략해도 됩니다

정수나 실수일 때는 d나 f를 명시적으로 써줘야 되고

자릿수를 의미하지만 소수부에서는 자리수는 약간 생각을 더 해야 합니다. 

정수부, 소수부 그 다음 나머지 공백을 어떻게 채울 것인지를 사용해보면서 확인해보는게 좋습니다.

 

Python Format 에는 두 종류가 있습니다.

%가 있고 format 함수로 사용할 수 있다는 것!

 


오늘 공부한 걸 정리하면서 느낀 점은

처음이라 뭐가 뭔지 잘 모르겠지만

계속 쓰다보면 익숙해 질 것 같습니다. 

 

중요한건 꾸준한 실습과 테스트 그리고 응용하는 것이겠죠?

컴퓨터 언어라는 것에 재미를 붙이는 중입니다..

부디 질리지 않고 꾸준히 배워

기록할 수 있기를 비나이다.. ㅎ

 

 

▼ format 11가지 실습 파이썬 파일 다운로드 받기

이미지 클릭하면 됩니당