반응형
1. 파이썬 format 함수: 문자열 포맷팅 마스터하기
파이썬의 format
함수는 문자열 안에 변수나 값을 삽입하여 원하는 형태로 문자열을 만들 수 있게 해주는 강력한 도구입니다. 이 함수를 사용하면 더욱 읽기 쉽고 유지보수하기 좋은 코드를 작성할 수 있습니다.
기본 형식
{필드_이름:변환_지시자!변환_플래그:너비.정밀도}
- 필드_이름: (선택 사항) format 함수의 인자 순서나 키워드 인자 이름을 지정합니다.
- 변환_지시자: (선택 사항) 값의 데이터 유형을 변환합니다 (예:
s
- 문자열,d
- 정수,f
- 부동 소수점). - 변환_플래그: (선택 사항) 변환된 값에 추가적인 서식을 적용합니다 (예:
!r
- repr 함수 사용,!s
- str 함수 사용). - 너비: (선택 사항) 출력할 문자열의 최소 너비를 지정합니다.
- 정밀도: (선택 사항) 부동 소수점 숫자의 소수점 이하 자릿수나 문자열의 최대 길이를 지정합니다.
기본 사용법
format
함수는 중괄호 {}
를 자리 표시자로 사용하여 문자열 안에 어떤 값을 넣을지 지정합니다.
name = "Alice"
age = 30
message = "내 이름은 {}이고, 나이는 {}살입니다.".format(name, age)
print(message) # 출력: 내 이름은 Alice이고, 나이는 30살입니다.
인덱스 활용
중괄호 안에 숫자를 넣어서 format 함수의 인자 순서를 지정할 수도 있습니다.
name = "Alice"
age = 30
message = "내 이름은 {0}이고, {0}의 나이는 {1}살입니다.".format(name, age)
print(message) # 출력: 내 이름은 Alice이고, Alice의 나이는 30살입니다.
키워드 인자 활용
중괄호 안에 변수 이름을 넣어서 키워드 인자 형태로 값을 전달할 수도 있습니다.
name = "Alice"
age = 30
message = "내 이름은 {name}이고, 나이는 {age}살입니다.".format(name=name, age=age)
print(message) # 출력: 내 이름은 Alice이고, 나이는 30살입니다.
형식 지정자 활용
중괄호 안에 콜론(:) 뒤에 형식 지정자를 추가하여 값의 형식을 세밀하게 제어할 수 있습니다.
pi = 3.141592
message = "원주율은 약 {:.2f}입니다.".format(pi)
print(message) # 출력: 원주율은 약 3.14입니다.
위 예시에서 .2f
는 소수점 둘째 자리까지 표시하라는 의미입니다.
f-string 활용 (Python 3.6 이상)
Python 3.6부터는 f-string이라는 더 간편한 문자열 포맷팅 방법이 도입되었습니다.
name = "Alice"
age = 30
message = f"내 이름은 {name}이고, 나이는 {age}살입니다."
print(message) # 출력: 내 이름은 Alice이고, 나이는 30살입니다.
f-string을 사용하면 중괄호 안에 변수 이름을 직접 넣을 수 있어 더욱 직관적입니다.
자주 사용되는 포맷 지시자 예시
지시자 | 설명 | 예시 (value = 123.4567) | 출력 결과 |
s | 문자열 | {value:s} | '123.4567' |
d | 정수 | {value:d} | '123' |
f | 고정 소수점 | {value:f} | '123.456700' |
.2f | 고정 소수점 (소수점 둘째 자리까지) | {value:.2f} | '123.46' |
% | 백분율 | {value:.1%} | '12345.7%' |
e | 지수 표기법 | {value:e} | '1.234567e+02' |
x | 16진수 (소문자) | {value:x} | '7b' |
X | 16진수 (대문자) | {value:X} | '7B' |
< | 왼쪽 정렬 | {value:<10} | '123.4567 ' |
> | 오른쪽 정렬 | {value:>10} | ' 123.4567' |
^ | 가운데 정렬 | {value:^10} | ' 123.4567 ' |
0 | 숫자 채우기 (빈 공간을 0으로 채움) | {value:08} | '00123.4567' |
+ | 부호 표시 (양수일 때도 + 기호 표시) | {value:+f} | '+123.456700' |
- | 부호 표시 (음수일 때만 - 기호 표시) | {value:-f} | '123.456700' |
양수 앞에 공백 추가 | {value: f} | ' 123.456700' | |
, | 숫자에 쉼표 추가 (1,000 단위 구분) | {value:,} | '123,456.7' |
더 많은 기능
format
함수와 f-string은 정렬, 채우기, 숫자 형식 지정 등 다양한 기능을 제공합니다. 자세한 내용은 파이썬 공식 문서나 관련 자료를 참고해 보세요.
주의 사항
format
함수를 사용할 때는 중괄호 개수와 인자 개수가 일치해야 합니다.- f-string을 사용할 때는 변수 이름에 오타가 없도록 주의해야 합니다.
반응형
'언어 > Python' 카테고리의 다른 글
[ Python ] 정규 표현식 사용하기 (0) | 2024.07.10 |
---|---|
[ Python ] str과 repr 의 차이에 대해서 알아보기 (0) | 2024.07.10 |
[ Python ] % 포맷 지시자 (0) | 2024.07.09 |
[ Python ] %를 사용한 포맷팅하기 (0) | 2024.07.09 |
[ Python ] Windows 서비스 프로그램 만들기 (0) | 2024.07.08 |