Skip to main content

16.12. curses.ascii — ASCII字符的实用程序


curses.ascii 模块提供ASCII字符和函数的名称常量,以测试各种ASCII字符类的成员资格。提供的常量是控制字符的名称,如下所示:

名称

含义

NUL

 

SOH

标题开始,控制台中断

STX

文本开始

ETX

文本结束

EOT

传输结束

ENQ

查询,配合 ACK 流量控制

ACK

确认

BEL

BS

退格

TAB

标签

HT

TAB 别名:“水平制表符”

LF

换行

NL

LF 别名:“新行”

VT

垂直选项卡

FF

表单Feed

CR

回车

SO

移出,开始交替字符集

SI

移入,恢复默认字符集

DLE

数据链接转义

DC1

XON,用于流量控制

DC2

设备控制2,块模式流量控制

DC3

XOFF,用于流量控制

DC4

设备控制4

NAK

否定确认

SYN

同步空闲

ETB

结束传输块

CAN

取消

EM

结束媒体

SUB

替代

ESC

逃逸

FS

文件分隔符

GS

组分隔符

RS

记录分隔符,块模式终止符

US

单位分隔符

SP

空间

DEL

删除

注意,许多这些在现代使用中没有什么实际意义。助记符源于数字计算机之前的电子打印机惯例。

该模块提供以下功能,在标准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十六进制数字。这相当于 c in string.hexdigits

curses.ascii.isctrl(c)

检查ASCII控制字符(序数值0到31)。

curses.ascii.ismeta(c)

检查非ASCII字符(序数值为0x80及以上)。

这些函数接受整数或字符串;当参数是字符串时,首先使用内置函数 ord() 转换。

注意,所有这些函数检查从传递的字符串的第一个字符派生的序数位值;他们实际上不知道任何关于主机的字符编码。对于知道字符编码的函数(和正确处理国际化),请参阅 string 模块。

以下两个函数采用单字符字符串或整数字节值;它们返回相同类型的值。

curses.ascii.ascii(c)

返回对应于 c 的低7位的ASCII值。

curses.ascii.ctrl(c)

返回与给定字符相对应的控制字符(字符位值按位和0x1f)。

curses.ascii.alt(c)

返回与给定ASCII字符相对应的8位字符(字符位值以0x80为单位)。

以下函数采用单字符字符串或整数值;它返回一个字符串。

curses.ascii.unctrl(c)

返回ASCII字符 c 的字符串表示形式。如果 c 是可打印的,则此字符串是字符本身。如果字符是控制字符(0x00–0x1f),字符串由插入符('^')后跟相应的大写字母组成。如果字符是ASCII删除(0x7f),则字符串为 '^?'。如果字符的元位(0x80)置位,元位被剥离,应用前面的规则,并且 '!' 在结果前面。

curses.ascii.controlnames

一个33个元素的字符串数组,包含从0(NUL)到0x1f(US)的32个ASCII控制字符的ASCII助记符,加上空格字符的助记符 SP