TOP
class="layout-aside-left paging-number">
본문 바로가기
[파이썬 Projects]/<파이썬 기초>

[파이썬] 파이썬 기초: 다양한 출력 포맷

by 기록자_Recordian 2025. 1. 15.
728x90
반응형
이전 내용
 

[파이썬] 파이썬 기초 - 랜덤 모듈

이전 내용 [파이썬] 파이썬 기초: 함수 (보완)파이썬 함수 (다른 글) [파이썬] 파이썬기초: 함수시작에 앞서해당 내용은 ' 박응용 지음. 이지스 퍼블리싱' 을 토대로 작성되었습니다. 보다 자세한

puppy-foot-it.tistory.com


다양한 출력 포맷

 

◆ 공백

print("%10s 공백 10개" %"Hello")

print("%-10s 공백 10개" %"Hello")

 

◆ 빈자리는 빈공간으로 두고, 오른쪽 정렬을 하되, 총 10자리 공간 확보

print("{0: >10}".format(500))

 

◆ 양수일 때는 +, 음수일 때는 - 기호 붙이기

print("{0: >+10}".format(500))
print("{0: >+10}".format(-500))

 

◆ 왼쪽 정렬하고, 빈칸을 _ 로 채우기

print("{0:_<+10}".format(500))
print("{0:_<+10}".format(-500))
print("{0:_<10}".format(500))

 

◆ 3자리마다 콤마 찍기

print("{0:,}".format(10000000000))
# 3자리마다 콤마찍어주기, +- 부호도 붙이기
print("{0:+,}".format(10000000000))
print("{0:+,}".format(-10000000000))

 

- 3자리마다 콤마찍어주기, 부호붙이기, 자릿수 확보하기 + 빈자리는 ^ 로 채워주기

print("{0:^<+30,}".format(10000000000))

 

◆ 소수점 출력하기

print("{0:f}".format(5/3))

 

- 소수점을 특정 자릿수만 출력하기

print("{0:.1f}".format(5/3))
print("{0:.2f}".format(5/3))
print("{0:.3f}".format(5/3))
print("{0:.4f}".format(5/3))


포맷 코드

 

◆ 자료형에 따라

%s : 문자열

%d : 정수

%c : 문자 1개

%f : 부동 소수

 

아래 처럼 출력값을 변수로 넣어 출력할 수도 있으며,

gender = "남자"
birth = 201211
alphabet = "a"
pie = 3.14

print("나는 %s입니다." %gender)
print("저의 생년월일은 %d 입니다." %birth)
print("영어의 첫 글자는 %c 입니다." %alphabet)
print("원주율은 %f 입니다." %pie)

 

또는 치환하고 싶은 자리에 자료 형태에 맞게 입력한 후 문자열 다음에 % 출력값을 작성하는 방식으로도 사용할 수 있다.

print("나는 %s입니다." %"남자")
print("저의 생년월일은 %d 입니다." % 201211)
print("영어의 첫 글자는 %c 입니다." %"a")
print("원주율은 %f 입니다." % 3.14)

 

특히, %s의 경우 모든 자료를 문자형으로 바꿔서 출력하기 때문에 어떤 자료 형태로도 치환이 가능하다.

만약 자료 형태를 유지할 필요가 없을 경우에 유용하다.

birth = 201211
pie = 3.14

print("저의 생년월일은 %s 입니다." %birth)
print("원주율은 %s 입니다." %pie)

 

만약 "%"  문자를 출력하고 싶은 경우에는 %% 형태로 사용하면 된다.

print("나는 네가 약속을 어길거라고 %s%% 확신해" %100)

 

%앞에 출력하고 싶은 소수점 자릿수를 부여할 수도 있다.

rate = 0.85
print(f"성공률:{rate:.2%}")

 

◆ 특정 진수로 출력하기

format(정수,'d')일 때는 10진수
format(정수,'o')일 때는 8진수
format(정수,'x')일 때는 16진수

num = 256
print("==num==")
print("10진수:", format(num, 'd'))
print("8진수:", format(num, 'o'))
print("16진수:", format(num, 'x'))


문자열의 멤버 메서드 format사용

 

◆ 문자열의 멤버 메서드 format을 사용

print("10진수:{0:d}".format(num))
print("8진수:{0:o}".format(num))
print("16진수:{0:x}".format(num))

 

문자열의 멤버 메서드 format을 사용할 때는 여러 개의 인자를 전달하고 문자열에 {인덱스}로 출력 포멧을 지정할 수 있다.

a = 5
b = 3
print("a:{0}, b:{1}".format(a,b))
print("{0}+{1} = {1}+{0} = {2}".format(a,b, a+b))

 

또는 format 함수 내에서 변수를 지정하여 값을 넣을수도 있다.

print("{name}의 {subject} 점수는 {score} 입니다". format(name = "호세", subject="영어", score=85))


f문자열

 

f"문자열 출력 포멧" 

보다 직관적으로 포멧을 지정할 수 있게 f"문자열 출력 포멧" 형태로 표현할 수도 있다.

a = 123
b = 2/3
print(f"a:{a} b:{b}")
print(f"a:{a:012d} b:{b:.2f}")

 


다음 내용

 


[출처]

나도코딩 유튜브 "파이썬 코딩 무료 강의 (기본편)"

파이썬 입문

 

https://planharry.tistory.com/11

 

 

 

 

728x90
반응형