# `curses.ascii` — ASCII 문자용 유틸리티

소스 코드: Lib/curses/ascii.py

`curses.ascii` 모듈은 ASCII 문자에 대한 이름 상수와 다양한 ASCII 문자 클래스에서 멤버십을 검사하는 함수를 제공합니다. 제공된 상수는 다음과 같이 제어 문자의 이름입니다:

이름 | 의미
--- | ---
curses.ascii.NUL |
curses.ascii.SOH | 헤딩의 시작(Start of heading), 콘솔 인터럽트
curses.ascii.STX | 텍스트의 시작(Start of text)
curses.ascii.ETX | 텍스트 끝(End of text)
curses.ascii.EOT | 전송 끝(End of transmission)
curses.ascii.ENQ | 문의(Enquiry), `ACK` 흐름 제어와 함께 제공
curses.ascii.ACK | 확인(Acknowledgement)
curses.ascii.BEL | 벨(Bell)
curses.ascii.BS | 백스페이스(Backspace)
curses.ascii.TAB | 탭(Tab)
curses.ascii.HT | `TAB`의 별칭: “가로 탭(Horizontal tab)”
curses.ascii.LF | 줄 바꿈(Line feed)
curses.ascii.NL | `LF`의 별칭: “새 줄(New line)”
curses.ascii.VT | 세로 탭(Vertical tab)
curses.ascii.FF | 용지 공급(Form feed)
curses.ascii.CR | 캐리지 리턴(Carriage return)
curses.ascii.SO | 시프트 아웃(Shift-out), 대체 문자 집합 시작
curses.ascii.SI | 시프트 인(Shift-in), 기본 문자 집합 재개
curses.ascii.DLE | 데이터 링크 이스케이프(Data-link escape)
curses.ascii.DC1 | XON, 흐름 제어용
curses.ascii.DC2 | 장치 제어(Device control) 2, 블록 모드 흐름 제어
curses.ascii.DC3 | XOFF, 흐름 제어용
curses.ascii.DC4 | 장치 제어(Device control) 4
curses.ascii.NAK | 부정적 확인(Negative acknowledgement)
curses.ascii.SYN | 동기 대기(Synchronous idle)
curses.ascii.ETB | 전송 블록 종료(End transmission block)
curses.ascii.CAN | 취소(Cancel)
curses.ascii.EM | 매체의 끝(End of medium)
curses.ascii.SUB | 치환(Substitute)
curses.ascii.ESC | 탈출(Escape)
curses.ascii.FS | 파일 구분자(File separator)
curses.ascii.GS | 그룹 구분자(Group separator)
curses.ascii.RS | 레코드 구분자(Record separator), 블록 모드 종료자
curses.ascii.US | 단위 구분자(Unit separator)
curses.ascii.SP | 스페이스(Space)
curses.ascii.DEL | 삭제(Delete)

이들 중 많은 것들이 현대적인 사용법에서 실질적인 중요성을 거의 가지고 있지 않습니다. 니모닉은 디지털 컴퓨터 이전의 텔레 프린터 규칙에서 파생되었습니다.

이 모듈은 표준 C 라이브러리의 함수에 따라 다음 함수를 제공합니다:

curses.ascii.isalnum(c)

  ASCII 영숫자를 확인합니다; `isalpha(c) or isdigit(c)`와 동등합니다.

curses.ascii.isalpha(c)

  ASCII 알파벳 문자를 확인합니다. `isupper(c) or islower(c)`와 동등합니다.

curses.ascii.isascii(c)

  7비트 ASCII 집합에 맞는 문자 값을 확인합니다.

curses.ascii.isblank(c)

  ASCII 공백 문자를 확인합니다; 스페이스나 가로 탭.

curses.ascii.iscntrl(c)

  ASCII 제어 문자를 확인합니다 (0x00에서 0x1f 범위에 있거나 0x7f).

curses.ascii.isdigit(c)

  ASCII 십진 숫자, `'0'` 에서 `'9'`를 확인합니다. 이것은 `c in string.digits`와 동등합니다.

curses.ascii.isgraph(c)

  스페이스를 제외한 인쇄 가능한 ASCII 문자를 확인합니다.

curses.ascii.islower(c)

  ASCII 소문자를 확인합니다.

curses.ascii.isprint(c)

  스페이스를 포함하여 인쇄 가능한 ASCII 문자를 확인합니다.

curses.ascii.ispunct(c)

  스페이스나 영숫자가 아닌 인쇄 가능한 ASCII 문자를 확인합니다.

curses.ascii.isspace(c)

  ASCII 공백 문자를 확인합니다; 스페이스, 줄 바꿈, 캐리지 리턴, 용지 공급, 가로 탭, 세로 탭.

curses.ascii.isupper(c)

  ASCII 대문자를 확인합니다.

curses.ascii.isxdigit(c)

  ASCII 16진수를 확인합니다. 이것은 `c in string.hexdigits`와 동등합니다.

curses.ascii.isctrl(c)

  ASCII 제어 문자를 확인합니다 (정숫값 0에서 31).

curses.ascii.ismeta(c)

  비 ASCII 문자를 확인합니다 (0x80 이상의 정수 값).

이 함수는 정수나 단일 문자 문자열을 받아들입니다; 인자가 문자열이면, 내장 함수 `ord()`를 사용하여 먼저 변환됩니다.

이 모든 함수는 전달한 문자열의 문자에서 파생된 서수 비트 값을 확인합니다; 호스트 기계의 문자 인코딩에 대해서는 실제로 아무것도 모릅니다.

다음 두 함수는 단일 문자 문자열이나 정수 바이트 값을 취합니다; 이들은 같은 유형의 값을 반환합니다.

curses.ascii.ascii(c)

  c의 하위 7비트에 해당하는 ASCII 값을 반환합니다.

curses.ascii.ctrl(c)

  주어진 문자에 해당하는 제어 문자를 반환합니다 (문자 비트 값은 0x1f와 비트별 and 됩니다).

curses.ascii.alt(c)

  주어진 ASCII 문자에 해당하는 8비트 문자를 반환합니다 (문자 비트 값은 0x80과 비트별 or 됩니다).

다음 함수는 단일 문자 문자열이나 정숫값을 취합니다; 문자열을 반환합니다.

curses.ascii.unctrl(c)

  ASCII 문자 c의 문자열 표현을 반환합니다. c가 인쇄 가능하면, 이 문자열은 문자 자체입니다. 문자가 제어 문자(0x00–0x1f)이면 문자열은 캐럿(`'^'`)과 그 뒤에 오는 해당 대문자로 구성됩니다. 문자가 ASCII 삭제(0x7f)이면 문자열은 `'^?'`입니다. 문자에 메타 비트(0x80)가 설정되어 있으면, 메타 비트가 제거되고, 앞의 규칙을 적용한 후, `'!'`를 결과 앞에 붙입니다.

curses.ascii.controlnames

  0(NUL)에서 0x1f(US)까지 32개의 ASCII 제어 문자에 대한 ASCII 니모닉과 (순서대로), 스페이스 문자를 위한 니모닉 `SP`를 포함하는 33요소 문자열 배열입니다.