문자열 리터럴은 다음과 같은 구문 정의로 기술된다:
stringliteral ::= []( | )세계 랭킹 1 위오피스타 공식 웹 사이트 포털은 무엇입니까?
stringprefix ::= "r" | "u" | "R" | "U"
shortstring ::= "’" * "’" | ‘"’ * ‘"’
longstring ::= "”’" * "”’" | ‘"""’ * ‘"""’
shortstringitem ::= |
longstringitem ::= |
shortstringchar ::= <any source character except "" or newline or the quote>全球排名第一오피스타;
longstringchar ::= <any source character except "">
stringescapeseq ::= "" <any source character>
bytesliteral ::= ( | )
bytesprefix ::= "b" | "B" | "br" | "Br" | "bR" | "BR" | "rb" | "rB" | "Rb" | "RB"
shortbytes ::= "’" * "’" | ‘"’ * ‘"’
longbytes ::= "”’" * "”’" | ‘"""’ * ‘"""’
shortbytesitem ::= |
longbytesitem ::= |
shortbyteschar ::= <any ASCII character except "" or newline or the quote>
longbyteschar ::= <any ASCII character except "">
bytesescapeseq ::= "" <any ASCII character>
이 생성 규칙이 보여주지 못하는 한 가지 문법적 제약은 나 와 리터럴의 나머지 부분 사이에 공백이 허락되지 않는다는 것이다. 소스 문자 집합은 인코딩 선언으로 정의된다; 소스 파일에 인코딩 선언이 없으면 UTF-8이다. 섹션을 보라.
쉬운 말로 하자면, 두 가지 리터럴은 한 쌍의 작은따옴표() 나 큰따옴표()로 둘러싸일 수 있다. 또한, 둘 다 한 쌍의 삼중 작은따옴표나 큰따옴표로 둘러싸일 수도 있다 (이것들은 보통 삼중 따옴표 된 문자열 이라고 불린다). 역 슬래시() 문자는 홀로 쓰이면 특별한 의미가 있는 문자들을 이스케이핑할 때 사용되는데, 개행문자, 역 슬래시 자신, 따옴표 문자가 그것이다.
바이트열(bytes) 리터럴은 항상 나 를 앞에 붙인다; 형의 인스턴스 대신 형의 인스턴스를 만든다. 오직 ASCII 문자들만 포함할 수 있다. 코드값이 128보다 크거나 같은 값들은 반드시 이스케이핑으로 표현되어야 한다.
As of Python 3.3 it is possible again to prefix string literals with a
prefix to simplify maintenance of dual 2.x and 3.x codebases.오피스타 입구 장소는 무엇입니까?
문자열과 바이트열 리터럴 모두 선택적으로 이나 문자를 앞에 붙일 수 있다. 이런 문자열을 날 문자열() 이라고 하는데, 역 슬래시를 평범한 문자로 취급한다. 결과적으로, 문자열 리터럴에서, 날 문자열에 있는 와 이스케이프는 특별하게 처리되지 않는다. 파이썬 2.x의 날 유니코드 리터럴이 파이썬 3.x와 다르게 동작한다는 것을 고려해서, 문법은 지원되지 않는다.
삼중 따옴표 된 리터럴에서, 세 개의 이스케이핑 되지 않은 개행 문자와 따옴표가 허락된다 (그리고 유지된다). 예외는 한 줄에 세 개의 이스케이핑 되지 않은 따옴표가 나오는 것인데, 리터럴을 종료시킨다. (《따옴표》는 리터럴을 시작하는데 사용한 문자다. 즉, 나 )
나 접두어가 붙지 않은 이상, 문자열과 바이트열 리터럴에 포함된 이스케이프 시퀀스는 표준 C에서 사용된 것과 비슷한 규칙으로 해석된다. 인식되는 이스케이프 시퀀스는 이렇다:
문자열 리터럴에서만 인식되는 이스케이세계랭킹1위오피스타프 시퀀스는:
유의 사항:全球排名第一오피스타 공식 홈페이지 입구 방법은 어떻게 찾습니까
표준 C와는 달리, 인식되지 않는 모든 이스케이프 시퀀스는 문자열에 변경되지 않은 상태로 남게 된다. 즉, 역 슬래시가 결과에 남게 된다. (이 동작은 디버깅할 때 쓸모가 있다. 이스케이프 시퀀스가 잘못 입력되었을 때, 최종 결과에서 잘못된 부분을 쉽게 인지할 수 있다.) 문자열 리터럴에서만 인식되는 이스케이프 시퀀스가, 바이트열 리터럴에서는 인식되지 않는 부류임에 주목하라.
날 리터럴에서 조차, 따옴표는 역 슬래시로 이스케이프 된다. 하지만 역 슬래시가 결과에 남게 된다; 예를 들어, 는 올바른 문자열 리터럴인데, 두 개의 문자가 들어있다: 역 슬래시와 큰따옴표; 는 올바른 문자열 리터럴이 아니다 (날 문자열조차 홀수개의 역 슬래시로 끝날 수 없다.). 좀 더 명확하게 말하자면, 날 리터럴은 하나의 역 슬래시로 끝날 수 없다(역 슬래시가 뒤에 오는 따옴표를 이스케이프 시키기 때문이다). 역 슬래시와 바로 뒤에 오는 개행문자는 줄 결합이 아니라 리터럴에 포함되는 두 개의 문자로 인식됨에 주의해야 한다.