summaryrefslogtreecommitdiff
path: root/devdocs/python~3.12/library%2Fcurses.ascii.html
blob: 6ca98fc57182be24778b042a2ca00b76086bbead (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
 <span id="curses-ascii-utilities-for-ascii-characters"></span><h1>curses.ascii — Utilities for ASCII characters</h1> <p><strong>Source code:</strong> <a class="reference external" href="https://github.com/python/cpython/tree/3.12/Lib/curses/ascii.py">Lib/curses/ascii.py</a></p>  <p>The <a class="reference internal" href="#module-curses.ascii" title="curses.ascii: Constants and set-membership functions for ASCII characters."><code>curses.ascii</code></a> module supplies name constants for ASCII characters and functions to test membership in various ASCII character classes. The constants supplied are names for control characters as follows:</p> <table class="docutils align-default">  <thead> <tr>
<th class="head"><p>Name</p></th> <th class="head"><p>Meaning</p></th> </tr> </thead>  <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.NUL">
<code>curses.ascii.NUL</code> </dt> <dd></dd>
</dl> </td> <td></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.SOH">
<code>curses.ascii.SOH</code> </dt> <dd></dd>
</dl> </td> <td><p>Start of heading, console interrupt</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.STX">
<code>curses.ascii.STX</code> </dt> <dd></dd>
</dl> </td> <td><p>Start of text</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.ETX">
<code>curses.ascii.ETX</code> </dt> <dd></dd>
</dl> </td> <td><p>End of text</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.EOT">
<code>curses.ascii.EOT</code> </dt> <dd></dd>
</dl> </td> <td><p>End of transmission</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.ENQ">
<code>curses.ascii.ENQ</code> </dt> <dd></dd>
</dl> </td> <td><p>Enquiry, goes with <a class="reference internal" href="#curses.ascii.ACK" title="curses.ascii.ACK"><code>ACK</code></a> flow control</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.ACK">
<code>curses.ascii.ACK</code> </dt> <dd></dd>
</dl> </td> <td><p>Acknowledgement</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.BEL">
<code>curses.ascii.BEL</code> </dt> <dd></dd>
</dl> </td> <td><p>Bell</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.BS">
<code>curses.ascii.BS</code> </dt> <dd></dd>
</dl> </td> <td><p>Backspace</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.TAB">
<code>curses.ascii.TAB</code> </dt> <dd></dd>
</dl> </td> <td><p>Tab</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.HT">
<code>curses.ascii.HT</code> </dt> <dd></dd>
</dl> </td> <td><p>Alias for <a class="reference internal" href="#curses.ascii.TAB" title="curses.ascii.TAB"><code>TAB</code></a>: “Horizontal tab”</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.LF">
<code>curses.ascii.LF</code> </dt> <dd></dd>
</dl> </td> <td><p>Line feed</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.NL">
<code>curses.ascii.NL</code> </dt> <dd></dd>
</dl> </td> <td><p>Alias for <a class="reference internal" href="#curses.ascii.LF" title="curses.ascii.LF"><code>LF</code></a>: “New line”</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.VT">
<code>curses.ascii.VT</code> </dt> <dd></dd>
</dl> </td> <td><p>Vertical tab</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.FF">
<code>curses.ascii.FF</code> </dt> <dd></dd>
</dl> </td> <td><p>Form feed</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.CR">
<code>curses.ascii.CR</code> </dt> <dd></dd>
</dl> </td> <td><p>Carriage return</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.SO">
<code>curses.ascii.SO</code> </dt> <dd></dd>
</dl> </td> <td><p>Shift-out, begin alternate character set</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.SI">
<code>curses.ascii.SI</code> </dt> <dd></dd>
</dl> </td> <td><p>Shift-in, resume default character set</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.DLE">
<code>curses.ascii.DLE</code> </dt> <dd></dd>
</dl> </td> <td><p>Data-link escape</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.DC1">
<code>curses.ascii.DC1</code> </dt> <dd></dd>
</dl> </td> <td><p>XON, for flow control</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.DC2">
<code>curses.ascii.DC2</code> </dt> <dd></dd>
</dl> </td> <td><p>Device control 2, block-mode flow control</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.DC3">
<code>curses.ascii.DC3</code> </dt> <dd></dd>
</dl> </td> <td><p>XOFF, for flow control</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.DC4">
<code>curses.ascii.DC4</code> </dt> <dd></dd>
</dl> </td> <td><p>Device control 4</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.NAK">
<code>curses.ascii.NAK</code> </dt> <dd></dd>
</dl> </td> <td><p>Negative acknowledgement</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.SYN">
<code>curses.ascii.SYN</code> </dt> <dd></dd>
</dl> </td> <td><p>Synchronous idle</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.ETB">
<code>curses.ascii.ETB</code> </dt> <dd></dd>
</dl> </td> <td><p>End transmission block</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.CAN">
<code>curses.ascii.CAN</code> </dt> <dd></dd>
</dl> </td> <td><p>Cancel</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.EM">
<code>curses.ascii.EM</code> </dt> <dd></dd>
</dl> </td> <td><p>End of medium</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.SUB">
<code>curses.ascii.SUB</code> </dt> <dd></dd>
</dl> </td> <td><p>Substitute</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.ESC">
<code>curses.ascii.ESC</code> </dt> <dd></dd>
</dl> </td> <td><p>Escape</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.FS">
<code>curses.ascii.FS</code> </dt> <dd></dd>
</dl> </td> <td><p>File separator</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.GS">
<code>curses.ascii.GS</code> </dt> <dd></dd>
</dl> </td> <td><p>Group separator</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.RS">
<code>curses.ascii.RS</code> </dt> <dd></dd>
</dl> </td> <td><p>Record separator, block-mode terminator</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.US">
<code>curses.ascii.US</code> </dt> <dd></dd>
</dl> </td> <td><p>Unit separator</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.SP">
<code>curses.ascii.SP</code> </dt> <dd></dd>
</dl> </td> <td><p>Space</p></td> </tr> <tr>
<td>
<dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.DEL">
<code>curses.ascii.DEL</code> </dt> <dd></dd>
</dl> </td> <td><p>Delete</p></td> </tr>  </table> <p>Note that many of these have little practical significance in modern usage. The mnemonics derive from teleprinter conventions that predate digital computers.</p> <p>The module supplies the following functions, patterned on those in the standard C library:</p> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.isalnum">
<code>curses.ascii.isalnum(c)</code> </dt> <dd>
<p>Checks for an ASCII alphanumeric character; it is equivalent to <code>isalpha(c) or
isdigit(c)</code>.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.isalpha">
<code>curses.ascii.isalpha(c)</code> </dt> <dd>
<p>Checks for an ASCII alphabetic character; it is equivalent to <code>isupper(c) or
islower(c)</code>.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.isascii">
<code>curses.ascii.isascii(c)</code> </dt> <dd>
<p>Checks for a character value that fits in the 7-bit ASCII set.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.isblank">
<code>curses.ascii.isblank(c)</code> </dt> <dd>
<p>Checks for an ASCII whitespace character; space or horizontal tab.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.iscntrl">
<code>curses.ascii.iscntrl(c)</code> </dt> <dd>
<p>Checks for an ASCII control character (in the range 0x00 to 0x1f or 0x7f).</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.isdigit">
<code>curses.ascii.isdigit(c)</code> </dt> <dd>
<p>Checks for an ASCII decimal digit, <code>'0'</code> through <code>'9'</code>. This is equivalent to <code>c in string.digits</code>.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.isgraph">
<code>curses.ascii.isgraph(c)</code> </dt> <dd>
<p>Checks for ASCII any printable character except space.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.islower">
<code>curses.ascii.islower(c)</code> </dt> <dd>
<p>Checks for an ASCII lower-case character.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.isprint">
<code>curses.ascii.isprint(c)</code> </dt> <dd>
<p>Checks for any ASCII printable character including space.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.ispunct">
<code>curses.ascii.ispunct(c)</code> </dt> <dd>
<p>Checks for any printable ASCII character which is not a space or an alphanumeric character.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.isspace">
<code>curses.ascii.isspace(c)</code> </dt> <dd>
<p>Checks for ASCII white-space characters; space, line feed, carriage return, form feed, horizontal tab, vertical tab.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.isupper">
<code>curses.ascii.isupper(c)</code> </dt> <dd>
<p>Checks for an ASCII uppercase letter.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.isxdigit">
<code>curses.ascii.isxdigit(c)</code> </dt> <dd>
<p>Checks for an ASCII hexadecimal digit. This is equivalent to <code>c in
string.hexdigits</code>.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.isctrl">
<code>curses.ascii.isctrl(c)</code> </dt> <dd>
<p>Checks for an ASCII control character (ordinal values 0 to 31).</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.ismeta">
<code>curses.ascii.ismeta(c)</code> </dt> <dd>
<p>Checks for a non-ASCII character (ordinal values 0x80 and above).</p> </dd>
</dl> <p>These functions accept either integers or single-character strings; when the argument is a string, it is first converted using the built-in function <a class="reference internal" href="functions#ord" title="ord"><code>ord()</code></a>.</p> <p>Note that all these functions check ordinal bit values derived from the character of the string you pass in; they do not actually know anything about the host machine’s character encoding.</p> <p>The following two functions take either a single-character string or integer byte value; they return a value of the same type.</p> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.ascii">
<code>curses.ascii.ascii(c)</code> </dt> <dd>
<p>Return the ASCII value corresponding to the low 7 bits of <em>c</em>.</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.ctrl">
<code>curses.ascii.ctrl(c)</code> </dt> <dd>
<p>Return the control character corresponding to the given character (the character bit value is bitwise-anded with 0x1f).</p> </dd>
</dl> <dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.alt">
<code>curses.ascii.alt(c)</code> </dt> <dd>
<p>Return the 8-bit character corresponding to the given ASCII character (the character bit value is bitwise-ored with 0x80).</p> </dd>
</dl> <p>The following function takes either a single-character string or integer value; it returns a string.</p> <span class="target" id="index-0"></span><dl class="py function"> <dt class="sig sig-object py" id="curses.ascii.unctrl">
<code>curses.ascii.unctrl(c)</code> </dt> <dd>
<p>Return a string representation of the ASCII character <em>c</em>. If <em>c</em> is printable, this string is the character itself. If the character is a control character (0x00–0x1f) the string consists of a caret (<code>'^'</code>) followed by the corresponding uppercase letter. If the character is an ASCII delete (0x7f) the string is <code>'^?'</code>. If the character has its meta bit (0x80) set, the meta bit is stripped, the preceding rules applied, and <code>'!'</code> prepended to the result.</p> </dd>
</dl> <dl class="py data"> <dt class="sig sig-object py" id="curses.ascii.controlnames">
<code>curses.ascii.controlnames</code> </dt> <dd>
<p>A 33-element string array that contains the ASCII mnemonics for the thirty-two ASCII control characters from 0 (NUL) to 0x1f (US), in order, plus the mnemonic <code>SP</code> for the space character.</p> </dd>
</dl> <div class="_attribution">
  <p class="_attribution-p">
    &copy; 2001&ndash;2023 Python Software Foundation<br>Licensed under the PSF License.<br>
    <a href="https://docs.python.org/3.12/library/curses.ascii.html" class="_attribution-link">https://docs.python.org/3.12/library/curses.ascii.html</a>
  </p>
</div>