Python 문자열 리터럴의 웃픈 비밀: raw string은 백슬래시로 끝날 수 없다

Python string literals are kinda funny

Python의 raw string 리터럴은 백슬래시 이스케이프를 해석하지 않지만, 어휘 분석은 일반 문자열과 동일하여 백슬래시로 끝날 수 없다. 이는 구현 단순화를 위한 것이었지만, f-string에서는 표현식에 주석과 개행이 포함될 수 있고, 닫는 중괄호나 콜론 등으로 종료되는 등 훨씬 복잡한 파싱이 필요하다. 이로 인해 lambda와 할당 표현식은 괄호로 감싸야 하는 재미있는 제약이 생긴다.

f-string을 어휘 분석하려면 중괄호 안의 표현식에 대해 완전한 Python 파서를 호출해야 한다.

같은 날의 다른 소식

2026-08-08