[python] 파이썬 문자열 format() 함수에 대한 이해 (% 기호)

파이썬에서 문자열 내 변수들을 삽입하고자 할 때, format() 함수를 사용합니다. 이 함수에 대한 간략한 정리를 하고자 합니다. 우선 아래 코드를 보겠습니다.


print("The value of {} is approximately {:.5f}".format('pi', np.pi))
# Output: The value of pi is approximately 3.141592653589793


문자열 내 {}를 place-holder라고 하며 변수의 값이 들어갈 위치를 의미합니다. format() 함수의 전달인자들은 place-holder에 차례대로 들어가게 되는 것입니다. 첫번째 place-holder에 문자열 'pi'가 삽입되고, 두번째 place-holder에 파이값이 들어갑니다. 다른 예시를 보겠습니다.


s = "{1:d} plus {0:d} is {2:d}"
print(s.format(2, 4, 2 + 4))
# 4 plus 2 is 6


위 예시처럼, format() 함수로 전달된 매개변수 중 몇 번째 매개변수를 사용할 것인지 place-holder 표현식에 명시할 수 있습니다. 그리고 콜론(:) 문자 뒤에 변수값 형태를 명시할 수 있습니다. d는 10진수, o는 8진수, x는 16진수, b는 2진수입니다. 따라서 {1:d}는 2번째 매개변수인 4를 10진수로, {0:d}는 1번째 매개변수 2를 10진수로, {2:d}는 3번째 매개변수 2+4를 10진수로 삽입하게 됩니다.


문자열을 매개변수로 전달하는 경우에는 아래와 같이 콜론 뒤 구문을 생략하고 사용할 수 있습니다.


print("Every {2} has its {3}.".format('dog', 'day', 'rose', 'thorn'))
# Every rose has its thorn.


% 기호 구문을 사용하면 format() 함수와 동일한 기능을 수행할 수도 있습니다.


print("The value of %s is approximately %.5f" % ('pi', np.pi))
# Output: The value of pi is approximately 3.14159


% 기호와 포맷기호로 place-holder {}를 대신하고 문자열 다음에 % 기호를 삽입하고 전달할 값들을 기술합니다. C/C++에서 printf() 함수와 유사합니다.


끝.

댓글

이 블로그의 인기 게시물

[PLC] PLC 아날로그 입출력 기본

전력(kW) 계산하기 (직류, 교류 단상, 교류 삼상)

공압 속도 제어: 미터인 vs 미터아웃

[PLC] 채터링 현상과 입력 필터

제너 다이오드에 저항을 연결하는 이유

[python] 파이썬 pyplot 2차원 그래프 샘플 코드

[PLC] 래더 다이어그램과 PLC

공압회로 기호

[PLC] PLC 입출력 타입 - 싱크 & 소스 (Sink & Source)

3선 결선식 센서의 타입 PNP, NPN