Python F-문자열: 고급 문자열 보간

F-문자열을 사용하여 Python에서 문자열 형식을 지정하는 방법을 알아보세요. 마스터 표현식 평가, 부동 소수점 정밀도 형식화, 날짜/시간 인쇄 및 자체 문서화 구문.

에디터에서 사용해 보세요

개요

문자열 형식 지정은 개발자가 매일 수행하는 작업입니다. 역사적으로 Python 형식 지정은 C 스타일 `%` 형식 지정 또는 `.format()` 메서드에 의존했습니다. 기능적이지만 이러한 오래된 구문 스타일로 인해 코드가 장황하고 읽기 어려운 경우가 많았습니다.Python 3.6에서는 일반적으로 F-문자열로 알려진 형식화된 문자열 리터럴을 도입했습니다. F-문자열은 변수와 표현식을 문자열 리터럴에 직접 삽입하기 위한 간결하고 읽기 쉬우며 고도로 최적화된 구문을 제공합니다.

F-문자열을 생성하려면 문자열 리터럴 앞에 `f` 또는 `F`를 붙입니다(예: `f"Hello {name}"`). 중괄호 `{...}` 안에 배치된 모든 변수 또는 Python 표현식은 런타임 시 평가되어 자동으로 문자열로 변환됩니다. F-문자열은 단지 변수만을 위한 것이 아닙니다. 함수를 호출하고, 수학 계산을 수행하고, 중괄호 안의 사전 값에 액세스할 수도 있으므로 임시 변수가 필요하지 않습니다.

F-문자열에는 풍부한 형식 지정 언어도 있습니다. 중괄호 안에 콜론 `:`을 추가하면 형식 지정 규칙을 지정할 수 있습니다. 예를 들어, `{value:.2f}`는 부동소수점을 소수점 이하 두 자리로 반올림하고, `{num:03d}`는 정수를 앞에 0으로 채우고, `{date:%Y-%m-%d}`는 날짜/시간 객체의 형식을 지정합니다.Python 3.8+에서 F-strings에는 변수 이름과 해당 값을 자동으로 인쇄하는 디버깅 구문 `{variable=}`이 도입되어 디버깅이 빠르고 간편해졌습니다.

코드 및 실행 출력

부동 소수점 형식화, 표현식 평가 및 자체 문서화 등호 디버깅을 시연합니다.

name = "Charlie"
price = 19.995
quantity = 3

# Basic interpolation and math evaluation
receipt = f"Customer: {name} | Total: ${price * quantity:.2f}"
print(receipt)

# Padding and alignment
number = 42
padded = f"ID: {number:05d}"
print(padded)

# Self-documenting debugging syntax (Python 3.8+)
value = 100
print(f"Debug output: {value=}")
터미널 출력
Customer: Charlie | Total: $59.99
ID: 00042
Debug output: value=100

단계별 구현

  • 보고서 및 대시보드의 수치 출력을 예쁘게
  • 동적 SQL 쿼리 또는 API 요청 페이로드 구성
  • 로컬 테스트 중 빠른 디버그 문 인쇄

자주 묻는 질문

F-문자열은 다른 문자열 형식 지정 방법보다 더 빠릅니까?

예, F-문자열은 실행 시 구문 분석되지 않고 런타임에 최적화된 바이트코드로 평가되므로 % 형식 지정 및 .format()보다 빠릅니다.

F-문자열에서 리터럴 중괄호를 어떻게 인쇄합니까?

리터럴 중괄호를 두 배로 늘려서 이스케이프할 수 있습니다. 예를 들어 f"{{Hello}}"는 리터럴 텍스트 '{Hello}'를 인쇄합니다.

관련 주제

권장 Python 리소스

관련 대화형 튜토리얼, 치트 시트, 코드 비교를 통해 지식을 확장하세요.