-
Python Programming Basic - Append. 문자열 포맷팅Python/Python Basic Lesson 2020. 3. 2. 20:42
변수값을 문자열을 표현하기 위한 기호
포맷 설명 %s 문자열에 대응 %d 실수에 대응 %f 정수에 대응
Example. 문자열 대응
s = ['a', 'b', 'c'] for i in s: print('문자는 %s' %i) # 문자열 포맷(%s) 문자는 a 문자는 b 문자는 c
Example. 실수 대응
s = [1.2, 2,5, 3.9] for i in s: print('실수는 %f' %i) # 실수형 포맷(%s) 실수는 1.200000 실수는 2.000000 실수는 5.000000 실수는 3.900000
s = [1.2, 2,5, 3.9] for i in s: print('문자는 %.2f' %i) # 소수 2번째 표현 실수형 포맷(%s) 실수는 1.20 실수는 2.00 실수는 5.00 실수는 3.90
Example. 정수 대응
intData = [2, 3, 4, 5] for i in s: print('숫자는 %d' %i) # 소수 2번째 표현 실수형 포맷(%s) 숫자는 2 숫자는 3 숫자는 4 숫자는 5
문자열에서 % 기호를 출력하고 싶을 때
percent = 2 print('올해 한국 경제는 %d % 입니다.' %percent) # TypeError: 발생 TypeError: not enough arguments for format string # %%로 % 문자열을 표기 print('올해 한국 경제는 %d %% 입니다.' %percent) 올해 한국 경제는 2 % 입니다.
2개 이상의 변수를 출력하고 싶을 때
dic = {'a':1, 'b':2, 'c':3} for i, j in dic.items(): print('문자는 %s %s' %(i,j) ) 문자는 a 문자는 b 문자는 1 문자는 1.3
연산이나 문자열을 합친 결과를 출력하고 싶을 때
dic = { 1:2, 3:4, 5:6 } for i, j in dic.items(): print('합은 %d' %(i+j) ) # 산술 합은 3 합은 7 합은 11 dic = { 'a':'b', 'c':'d', 'e':'f' } for i, j in dic.items(): print('문자 합차기 %s' %(i+j) ) # 문자 합치기 문자 합차기 ab 문자 합차기 cd 문자 합차기 ef
.format을 이용한 방식
* 데이터 타입을 지정할 필요 없음* .format 되는 요소의 출력을 늘리거나, 줄이거나, 순서를 바꿀 수 있는 등 유연하게 하게 출력 가능
lst = [ 1, 'a', 1.1 , [1, 2] ] # lst의 모든 요소 출력 print("{0}, {1}, {2}, {3}".format(lst[0],lst[1],lst[2],lst[3])) 1, a, 1.1, [1, 2] ------------------------------------------------------------------ # {1} 요소는 빼고 출력 print("{0}, {2}, {3}".format(lst[0],lst[1],lst[2],lst[3])) 1, 1.1, [1, 2] ------------------------------------------------------------------ # {0}과 {1} 순서 바꿔서 출력 print("{1}, {0}, {2}, {3} ".format(lst[0],lst[1],lst[2],lst[3])) 1, a, 1.1, [1, 2] ------------------------------------------------------------------ # {2}과 {3} 순서 바꿔서 출력 print("{1}, {0}, {2}, {3} ".format(lst[0],lst[1],lst[2],lst[3])) a, 1, 1.1, [1, 2] ------------------------------------------------------------------ # {3}과 {0} 추가 print("{1}, {0}, {3}, {2}, {3}, {0} ".format(lst[0],lst[1],lst[2],lst[3])) a, 1, [1, 2], 1.1, [1, 2], 1
왼쪽, 오른쪽, 가운데 정렬
# left s = 'python' print('"{:<10}"'.format(s)) "python " ----------------------------------------- # right s = 'python' print('"{:>10}"'.format(s)) " python" ----------------------------------------- # center s = 'python' print('"{:^10}"'.format(s)) " python "
인덱스를 이용한 할당
tup = (10, 20, 30) print('X: {0[0]} Y: {0[1]} Z: {0[2]}'.format(tup)) X: 10 Y: 20 Z: 30
숫자 천 단위마다 콤마로 구분( , )
value = 12345678 '{:,}'.format(value) '12,345,678'
퍼센트 계산
A = 10 B = 20 print('tax is : {:.2%}'.format(A / B)) tax is : 50.00%
날짜타입 출력
from datetime import datetime day = datetime(2020, 5, 25, 0, 0, 0) print('{:%Y-%m-%d %H:%M:%S}'.format(day)) 2020-05-25 00:00:00
'Python > Python Basic Lesson' 카테고리의 다른 글
[파이썬 강의 문제풀이] 소수(prime number) 구하기 (0) 2020.05.14 Python Programming Basic - Append. Regular Expression (정규식 표현식) 기호 (0) 2020.03.04 Python Programming Basic - Append. 리스트 축약 (List Comprehensions) (0) 2020.03.02 Python Programming Basic - Append. 내장함수 (Built-in function) (0) 2020.03.02 Python Programming Basic - 10. 날짜 다루기 (0) 2020.03.02 Python Programming Basic - 9. 파일읽고 / 쓰기 (0) 2020.03.02 Python Programming Basic - 8. 함수 (function) (0) 2020.03.02 Python Programming Basic - 7. 딕셔너리 함수 (0) 2020.03.02