포멧 문자열 리터럴 사용법

- %를 이용한 포맷팅, 문자열 중간에 %d 등 내용 작성후 뒤에 % 변수 형식으로 사용

age = 28
name = '홍길동'
height = 180.432
weight = 73.2353

print('이름은 %s, 나이는 %d살' %(name, age))
#'이름은 홍길동, 나이는 28살'

print('키는 %f cm' %height)
#'키는 180.432000 cm'

%d = 정수형

%f = 실수형

%s = 문자형

%o = 8진수

%x = 16진수

%% = %문자 입력

 

- 앞에 'f' 또는 'F'를 붙이고 {} 사이에 변수 또는 리터럴 값을 참조할 수 있는 파이썬 표현식을 사용할 수 있음

age = 28
name = '홍길동'
height = 180.432
weight = 73.2353

print(f'나이는 {age}살, 이름은 {name}')
#'나이는 28살, 이름은 홍길동'

print(f'키는 {height}cm, 몸무게는 {weight}kg')
#'키는 180.432cm, 몸무게는 73.2353kg'
print(f'키는 {height:.2f}cm, 몸무게는 {weight:.2f}kg')	#소수점 제한
#'키는 180.43cm, 몸무게는 73.24kg'

 {:.2f} 형식으로 데이터의 소수점을 제한할 수 있음

 

문자열 format() 메서드 사용

- '문자열'.format() 형식으로 사용함

age = 28
name = '홍길동'
height = 180.432
weight = 73.2353

print('이름은 "{}"이고, 나이는 {}살 입니다'.format(name,age))
#'이름은 "홍길동"이고, 나이는 28살 입니다'

print('이름은 "{1}"이고, 나이는 {0}살 입니다'.format(name,age))		#순서를 지정할 수 있음
#'이름은 "홍길동"이고, 나이는 28살 입니다'

print('이름은 "{name_val}"이고, 나이는 {age_val}살 입니다'.format(age_val = age, name_val = name))		#이름을 지정하여 위치를 지정할 수 있음
#'이름은 "홍길동"이고, 나이는 28살 입니다'

 

- .format() 메서드 딕셔너리 활용

people = {'Jake':24, 'Kate':33, 'Jordy':26}

# 설명 - {0번째 데이터(딕셔너리)의 [Jake]키의 데이터를 :d정수형으로 가져온다}
print('Jake의 나이는 {0[Jake]:d}, Jordy의 나이는 {0[Jordy]:d}, Kate의 나이는 {0[Kate]:d}'.format(people))
#'Jake의 나이는 24, Jordy의 나이는 26, Kate의 나이는 33'

## .format(**테이블명) 형식으로 키워드 인자로 전달하여 사용할 수도 있음
print('Jake의 나이는 {Jake:d}, Jordy의 나이는 {Jordy:d}, Kate의 나이는 {Kate:d}'.format(**people))
#'Jake의 나이는 24, Jordy의 나이는 26, Kate의 나이는 33'

 

- .format()활용

for x in range(1, 11):
    print('{0:2d} {1:3d} {2:4d}'.format(x, x*x, x*x*x))
    
#{N번째 포멧으로:N자리수를 차지하는 d(정수)형식}으로 출력한다
    
#  1   1    1
#  2   4    8
#  3   9   27
#  4  16   64
#  5  25  125
#  6  36  216
#  7  49  343
#  8  64  512
#  9  81  729
# 10 100 1000

2d, 3d, 4d 로 두자리, 세자리, 네자리 지정
지정 안했을때

 

{[포맷데이터 순서]:자릿수 | 형식}
'{:.2f}'.format(34.123456)

>> 34.12

'개발 > Python' 카테고리의 다른 글

print() 함수 기본 사용법  (0) 2021.07.06

+ Recent posts