태그된 제품에 대해 수수료를 받습니다.
% 연산자
파이썬에서 % 연산자를 사용한 문자열 포매팅 방식은 여러 가지 포맷 코드를 지원한다.
각 포맷 코드는 다른 종류의 데이터를 형식화하는 데 사용된다.
주요 포맷 코드
%d: 정수(integer)
%i: 정수(integer) (기능상 %d와 동일)
%f: 부동 소수점 실수(float)
%s: 문자열(string)
%x: 정수(integer)를 16진수(hexadecimal) 소문자로 표현
%X: 정수(integer)를 16진수(hexadecimal) 대문자로 표현
%o: 정수(integer)를 8진수(octal)로 표현
%e: 부동 소수점 실수(float)를 지수 표기법(exponential notation) 소문자로 표현
%E: 부동 소수점 실수(float)를 지수 표기법(exponential notation) 대문자로 표현
%g: 부동 소수점 실수(float)를 짧은 형식으로 표현 (소수점 형식 또는 지수 표기법 중 짧은 것을 선택)
%G: 부동 소수점 실수(float)를 짧은 형식으로 표현 (소수점 형식 또는 지수 표기법 중 짧은 것을 선택, %E와 동일)
예제 "i = %d\n" % i
"i = %d\n" % i는 문자열 포매팅을 위해 % 연산자를 사용하는 예
이 표현은 C 언어 스타일의 문자열 포매팅 방식으로, 변수를 포맷 문자열에 삽입할 때 사용
i = 42
formatted_string = "i = %d\n" % i
print(formatted_string)
# 실행결과: i = 42
설명
포맷 문자열 정의
"i = %d\n"에서 %d는 정수를 삽입할 위치를 지정하고 \n은 줄 바꿈을 나타낸다.
값 삽입
% 연산자를 사용하여 포맷 문자열에 i 값을 삽입
i가 42로 설정되어 있으므로, %d 위치에 42가 삽입
출력
formatted_string은 "i = 42\n"이 되고, print(formatted_string)은 이 문자열을 출력
줄 바꿈 문자 \n 덕분에 출력 후 다음 줄로 이동한다.
추가 예제
포맷 문자열에 여러 값을 삽입할 수도 있다.
i = 42
j = 7
formatted_string = "i = %d, j = %d\n" % (i, j)
print(formatted_string)
# 실행결과: i = 42, j = 7
이 경우, 포맷 문자열 "i = %d, j = %d\n"에 대해 두 개의 정수 값 i와 j가 각각 %d 자리에 삽입
각 포맷 코드를 사용하는 예제
정수 (%d, %i)
i = 42
print("정수: %d" % i)
# 출력: 정수: 42
부동 소수점 실수 (%f)
pi = 3.141592653589793
print("소수점: %f" % pi)
# 출력: 소수점: 3.141593
# 기본적으로 소수점 이하 6자리까지 표시됩니다.
문자열 (%s)
name = "Alice"
print("이름: %s" % name)
# 출력: 이름: Alice
16진수 (%x, %X)
number = 255
print("16진수 소문자: %x" % number)
# 출력: 16진수 소문자: ff
print("16진수 대문자: %X" % number)
# 출력: 16진수 대문자: FF
8진수 (%o)
number = 255
print("8진수: %o" % number)
# 출력: 8진수: 377
지수 표기법 (%e, %E)
number = 1234567890.123456
print("지수 표기법 소문자: %e" % number)
# 출력: 지수 표기법 소문자: 1.234568e+09
print("지수 표기법 대문자: %E" % number)
# 출력: 지수 표기법 대문자: 1.234568E+09
짧은 형식 (%g, %G)
number = 1234567890.123456
print("짧은 형식 소문자: %g" % number)
# 출력: 짧은 형식 소문자: 1.23457e+09
print("짧은 형식 대문자: %G" % number)
# 출력: 짧은 형식 대문자: 1.23457E+09
고급 사용법
포맷 코드 앞에 수치 형식을 지정하여 출력을 정렬하거나 자릿수를 제어할 수 있다.
정렬 및 폭 지정
number = 42
print("폭 5, 오른쪽 정렬: %5d" % number)
# 출력: 42
print("폭 5, 왼쪽 정렬: %-5d" % number)
# 출력: 42
소수점 자릿수 지정
pi = 3.141592653589793
print("소수점 이하 2자리: %.2f" % pi)
# 출력: 3.14
이 방식은 C 언어에서 유래한 것으로, 파이썬에서 % 연산자를 사용한 문자열 포매팅은
다양한 포맷 코드를 통해 여러 종류의 데이터를 문자열로 변환할 수 있다.
더 현대적이고 가독성이 좋은 방법으로는 str.format() 메서드나 f-string을 사용하는 것이 좋지만,
% 연산자는 여전히 유용하게 사용될 수 있다.
태그된 제품에 대해 수수료를 받습니다.