[이스케이프 문자] SyntaxError: unterminated string literal

ryun·2023년 1월 22일

Error

목록 보기
1/1

SyntaxError: unterminated string literal (detected at line 2)
종료되지 않은 문자 리터럴이 존재한다

에러 원인은 문자 리터럴이 끝나지 않은 부분(작은 따옴표 또는 큰 따옴표로 묶이지 않은 부분)이 어딘가에 있다는 것

📍 문자 리터럴 (literal)

리터럴이란 데이터(값) 그 자체로, 고정된 값을 표현하는 것을 의미한다.

  • 문자열 리터럴은 따옴표로 묶인 일련의 문자이다.
    따라서 문자 리터럴을 종료 시키기 위해서는 작은따옴표( ') 또는 큰 "따옴표( )로 묶어야 한다.
  • 리터럴 종류에는 문자 리터럴 뿐만 아니라 숫자 리터럴, 논리값 리터럴, 특수 리터럴, 컬렉션 리터럴이 있다.

📍 이스케이프 문자

\ (백슬래시) 와 같이 뒤에 같이 나오는 특정 문자(r, n, t 등)를 합쳐 하나의 이스케이프 문자라고 하고 출력시 특별한 의미를 나타낸다.
특수문자를 출력하거나 가독성을 좋게 만들기 위해 쓰인다.

이스케이프 문자
\n (주로 맥 운영체제)줄 바꿈
\r\n (주로 윈도우 운영체제)줄 바꿈
\tTab 키
\'홑따옴표
\"쌍따옴표
\\백슬래시
r'출력하고 싶은 문자열'이스케이프 문자 있어도 무시하고 그대로 출력

에러난 코드

back = "\"
print(back)

위 data 처럼 백슬래쉬 하나를 출력하고 싶다면 \\ 백슬래쉬를 두 번 입력해야 한다
만약 백슬래쉬 두 개가 필요하다면 \\\\ 4번 입력할 것 !

VScode 다크 테마에서 이스케이프 문자가 문자열과 다른 색으로 보여져서 한눈에 알아볼 수 있는 듯 하다




참고
https://wikidocs.net/20562, https://wikidocs.net/16475

0개의 댓글