The following table is an ASCII character table that translates different character codes—such as obtained by Python’s char()
function— into the respective symbol. You can find the source of the description here. Note that you can define each number using the decimal, binary, octal, or hexadecimal system—it’s always the same value!
Decimal | Binary | Octal | Hexadecimal | Symbol | Description |
---|---|---|---|---|---|
0 | 0 | 0 | 0 | NUL | Null char |
1 | 1 | 1 | 1 | SOH | Start of Heading |
2 | 10 | 2 | 2 | STX | Start of Text |
3 | 11 | 3 | 3 | ETX | End of Text |
4 | 100 | 4 | 4 | EOT | End of Transmission |
5 | 101 | 5 | 5 | ENQ | Enquiry |
6 | 110 | 6 | 6 | ACK | Acknowledgement |
7 | 111 | 7 | 7 | BEL | Bell |
8 | 1000 | 10 | 8 | BS | Back Space |
9 | 1001 | 11 | 9 | HT | Horizontal Tab |
10 | 1010 | 12 | 0A | LF | Line Feed |
11 | 1011 | 13 | 0B | VT | Vertical Tab |
12 | 1100 | 14 | 0C | FF | Form Feed |
13 | 1101 | 15 | 0D | CR | Carriage Return |
14 | 1110 | 16 | 0E | SO | Shift Out / X-On |
15 | 1111 | 17 | 0F | SI | Shift In / X-Off |
16 | 10000 | 20 | 10 | DLE | Data Line Escape |
17 | 10001 | 21 | 11 | DC1 | Device Control 1 (oft.XON) |
18 | 10010 | 22 | 12 | DC2 | Device Control 2 |
19 | 10011 | 23 | 13 | DC3 | Device Control 3 (oft.XOFF) |
20 | 10100 | 24 | 14 | DC4 | Device Control 4 |
21 | 10101 | 25 | 15 | NAK | Negative Acknowledgement |
22 | 10110 | 26 | 16 | SYN | Synchronous Idle |
23 | 10111 | 27 | 17 | ETB | End of Transmit Block |
24 | 11000 | 30 | 18 | CAN | Cancel |
25 | 11001 | 31 | 19 | EM | End of Medium |
26 | 11010 | 32 | 1A | SUB | Substitute |
27 | 11011 | 33 | 1B | ESC | Escape |
28 | 11100 | 34 | 1C | FS | File Separator |
29 | 11101 | 35 | 1D | GS | Group Separator |
30 | 11110 | 36 | 1E | RS | Record Separator |
31 | 11111 | 37 | 1F | US | Unit Separator |
32 | 100000 | 40 | 20 | SPACE | Space |
33 | 100001 | 41 | 21 | ! | Exclamation mark |
34 | 100010 | 42 | 22 | “ | Double quotes (or speech marks) |
35 | 100011 | 43 | 23 | # | Number |
36 | 100100 | 44 | 24 | $ | Dollar |
37 | 100101 | 45 | 25 | % | Percent |
38 | 100110 | 46 | 26 | & | Ampersand |
39 | 100111 | 47 | 27 | ‘ | Single quote |
40 | 101000 | 50 | 28 | ( | Open parenthesis (or open bracket) |
41 | 101001 | 51 | 29 | ) | Close parenthesis (orclose bracket) |
42 | 101010 | 52 | 2A | * | Asterisk |
43 | 101011 | 53 | 2B | + | Plus |
44 | 101100 | 54 | 2C | , | Comma |
45 | 101101 | 55 | 2D | – | Hyphen |
46 | 101110 | 56 | 2E | . | Period, dot or full stop |
47 | 101111 | 57 | 2F | / | Slash or divide |
48 | 110000 | 60 | 30 | 0 | Zero |
49 | 110001 | 61 | 31 | 1 | One |
50 | 110010 | 62 | 32 | 2 | Two |
51 | 110011 | 63 | 33 | 3 | Three |
52 | 110100 | 64 | 34 | 4 | Four |
53 | 110101 | 65 | 35 | 5 | Five |
54 | 110110 | 66 | 36 | 6 | Six |
55 | 110111 | 67 | 37 | 7 | Seven |
56 | 111000 | 70 | 38 | 8 | Eight |
57 | 111001 | 71 | 39 | 9 | Nine |
58 | 111010 | 72 | 3A | : | Colon |
59 | 111011 | 73 | 3B | ; | Semicolon |
60 | 111100 | 74 | 3C | < | Less than (or open angled bracket) |
61 | 111101 | 75 | 3D | = | Equals |
62 | 111110 | 76 | 3E | > | Greater than (or closeangled bracket) |
63 | 111111 | 77 | 3F | ? | Question mark |
64 | 1000000 | 100 | 40 | @ | At symbol |
65 | 1000001 | 101 | 41 | A | Uppercase A |
66 | 1000010 | 102 | 42 | B | Uppercase B |
67 | 1000011 | 103 | 43 | C | Uppercase C |
68 | 1000100 | 104 | 44 | D | Uppercase D |
69 | 1000101 | 105 | 45 | E | Uppercase E |
70 | 1000110 | 106 | 46 | F | Uppercase F |
71 | 1000111 | 107 | 47 | G | Uppercase G |
72 | 1001000 | 110 | 48 | H | Uppercase H |
73 | 1001001 | 111 | 49 | I | Uppercase I |
74 | 1001010 | 112 | 4A | J | Uppercase J |
75 | 1001011 | 113 | 4B | K | Uppercase K |
76 | 1001100 | 114 | 4C | L | Uppercase L |
77 | 1001101 | 115 | 4D | M | Uppercase M |
78 | 1001110 | 116 | 4E | N | Uppercase N |
79 | 1001111 | 117 | 4F | O | Uppercase O |
80 | 1010000 | 120 | 50 | P | Uppercase P |
81 | 1010001 | 121 | 51 | Q | Uppercase Q |
82 | 1010010 | 122 | 52 | R | Uppercase R |
83 | 1010011 | 123 | 53 | S | Uppercase S |
84 | 1010100 | 124 | 54 | T | Uppercase T |
85 | 1010101 | 125 | 55 | U | Uppercase U |
86 | 1010110 | 126 | 56 | V | Uppercase V |
87 | 1010111 | 127 | 57 | W | Uppercase W |
88 | 1011000 | 130 | 58 | X | Uppercase X |
89 | 1011001 | 131 | 59 | Y | Uppercase Y |
90 | 1011010 | 132 | 5A | Z | Uppercase Z |
91 | 1011011 | 133 | 5B | [ | Opening bracket |
92 | 1011100 | 134 | 5C | \ | Backslash |
93 | 1011101 | 135 | 5D | ] | Closing bracket |
94 | 1011110 | 136 | 5E | ^ | Caret – circumflex |
95 | 1011111 | 137 | 5F | _ | Underscore |
96 | 1100000 | 140 | 60 | ` | Grave accent |
97 | 1100001 | 141 | 61 | a | Lowercase a |
98 | 1100010 | 142 | 62 | b | Lowercase b |
99 | 1100011 | 143 | 63 | c | Lowercase c |
100 | 1100100 | 144 | 64 | d | Lowercase d |
101 | 1100101 | 145 | 65 | e | Lowercase e |
102 | 1100110 | 146 | 66 | f | Lowercase f |
103 | 1100111 | 147 | 67 | g | Lowercase g |
104 | 1101000 | 150 | 68 | h | Lowercase h |
105 | 1101001 | 151 | 69 | i | Lowercase i |
106 | 1101010 | 152 | 6A | j | Lowercase j |
107 | 1101011 | 153 | 6B | k | Lowercase k |
108 | 1101100 | 154 | 6C | l | Lowercase l |
109 | 1101101 | 155 | 6D | m | Lowercase m |
110 | 1101110 | 156 | 6E | n | Lowercase n |
111 | 1101111 | 157 | 6F | o | Lowercase o |
112 | 1110000 | 160 | 70 | p | Lowercase p |
113 | 1110001 | 161 | 71 | q | Lowercase q |
114 | 1110010 | 162 | 72 | r | Lowercase r |
115 | 1110011 | 163 | 73 | s | Lowercase s |
116 | 1110100 | 164 | 74 | t | Lowercase t |
117 | 1110101 | 165 | 75 | u | Lowercase u |
118 | 1110110 | 166 | 76 | v | Lowercase v |
119 | 1110111 | 167 | 77 | w | Lowercase w |
120 | 1111000 | 170 | 78 | x | Lowercase x |
121 | 1111001 | 171 | 79 | y | Lowercase y |
122 | 1111010 | 172 | 7A | z | Lowercase z |
123 | 1111011 | 173 | 7B | { | Opening brace |
124 | 1111100 | 174 | 7C | | | Vertical bar |
125 | 1111101 | 175 | 7D | } | Closing brace |
126 | 1111110 | 176 | 7E | ~ | Equivalency sign – tilde |
127 | 1111111 | 177 | 7F | DEL | Delete |

While working as a researcher in distributed systems, Dr. Christian Mayer found his love for teaching computer science students.
To help students reach higher levels of Python success, he founded the programming education website Finxter.com that has taught exponential skills to millions of coders worldwide. He’s the author of the best-selling programming books Python One-Liners (NoStarch 2020), The Art of Clean Code (NoStarch 2022), and The Book of Dash (NoStarch 2022). Chris also coauthored the Coffee Break Python series of self-published books. He’s a computer science enthusiast, freelancer, and owner of one of the top 10 largest Python blogs worldwide.
His passions are writing, reading, and coding. But his greatest passion is to serve aspiring coders through Finxter and help them to boost their skills. You can join his free email academy here.