PEP 332 – 바이트 벡터와 문자열/유니코드 통합
- Author:
- Skip Montanaro <skip at pobox.com>
- Status:
- Rejected
- Type:
- Standards Track
- Created:
- 11-Aug-2004
- Python-Version:
- 2.5
- Post-History:
번역·라이선스 안내
이 비공식 한국어 번역은 원문 Copyright 절의 Public Domain 조건에 따라 제공합니다. 원저자와 공식 원문은 그대로 표시합니다. 수정되지 않은 기준 원문 · 공식 최신판
초록
이 PEP는 원시 bytes 시퀀스 객체의 도입과 현재 str 및 unicode 객체의 통합을 설명합니다.
거부 통지
이 PEP는 이러한 형태로 거부되었습니다. 작성자는 이를 계속 추진할 시간이 부족하다고 밝혔으며, python-dev에서의 논의는 약간 다른 제안으로 옮겨갔고, 이 제안은 결국 새로운 PEP로 작성될 예정입니다. https://mail.python.org/pipermail/python-dev/2006-February/060930.html에서 시작하는 스레드를 참조하십시오.
근거
Python의 현재 문자열 객체는 여러 역할을 겸합니다. 문자열 객체는 ASCII 및 비ASCII 문자 데이터를 저장하는 동시에, 표시 가능한 문자 시퀀스로 합리적으로 해석할 수 없는 원시 바이트 시퀀스도 저장합니다. 이러한 중복은 과거에는 큰 문제가 아니었지만, Python이 소스 코드를 올바르게 인코딩하도록 요구하는 방향으로 나아감에 따라 원시 바이트 시퀀스를 나타내는 데 문자열을 사용하는 것이 더욱 문제가 될 것입니다. 또한 Python의 유니코드 지원이 향상됨에 따라 문자열을 ASCII로 인코딩된 유니코드 객체로 간주하기가 더 쉬워졌습니다.
제안된 구현
괄호 안의 숫자는 해당 기능이 도입될 Python 버전을 나타냅니다.
str의 동의어일 뿐인bytes내장 기능을 추가합니다. (2.5)- 원시 문자열 리터럴과 동등한
b"..."문자열 리터럴을 추가하되, 포함된 파일의 소스 인코딩과 충돌하는 값도 경고를 생성하지 않는다는 예외를 둡니다. (2.5) - “bytes”라는 이름의 변수 사용에 대해 경고합니다. (2.5 또는 2.6)
str타입과는 구별되는 시퀀스를 가리키는bytes내장 함수를 도입합니다. (2.6)str을unicode의 동의어로 만듭니다. (3.0)
Bytes 객체 API
추후 결정.
쟁점
- 이것이 Python 3.0 이전에 이루어질 수 있습니까?
bytes객체는 가변이어야 합니까, 불변이어야 합니까? (귀도는 가변이기를 선호하는 것으로 보입니다.)
Copyright
This document has been placed in the public domain.