- 方式一:通过ASCII码
ASCII(发音: /ˈæski/ ASS-kee[1],American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统。
ASCII码,就是一套英文字符的编码集,用8位二进制数表示所有英文字符,因为最早的计算机系统都是再英文环境下的,所有的英文字符在8位二进制数的范围(256位)就能完全保存下。
不可显示字符
Unicode 表示法 | 脱出字符 表示法 | 名称/意义 | ||||
0000 0000 | 00 | NUL | ␀ | ^@ | ||
0000 0001 | 01 | SOH | ␁ | ^A | ||
0000 0010 | 02 | STX | ␂ | ^B | ||
0000 0011 | 03 | ETX | ␃ | ^C | ||
0000 0100 | 04 | EOT | ␄ | ^D | ||
0000 0101 | 05 | ENQ | ␅ | ^E | ||
0000 0110 | 06 | ACK | ␆ | ^F | ||
0000 0111 | 07 | BEL | ␇ | ^G | ||
0000 1000 | 08 | BS | ␈ | ^H | ||
0000 1001 | 09 | HT | ␉ | ^I | ||
0000 1010 | 0A | LF | ␊ | ^J | ||
0000 1011 | 0B | VT | ␋ | ^K | ||
0000 1100 | 0C | FF | ␌ | ^L | ||
0000 1101 | 0D | CR | ␍ | ^M | ||
0000 1110 | 0E | SO | ␎ | ^N | 取消变换(Shift out) | |
0000 1111 | 0F | SI | ␏ | ^O | 启用变换(Shift in) | |
0001 0000 | 10 | DLE | ␐ | ^P | ||
0001 0001 | 11 | DC1 | ␑ | ^Q | ||
0001 0010 | 12 | DC2 | ␒ | ^R | 设备控制二 | |
0001 0011 | 13 | DC3 | ␓ | ^S | ||
0001 0100 | 14 | DC4 | ␔ | ^T | 设备控制四 | |
0001 0101 | 15 | NAK | ␕ | ^U | ||
0001 0110 | 16 | SYN | ␖ | ^V | ||
0001 0111 | 17 | ETB | ␗ | ^W | ||
0001 1000 | 18 | CAN | ␘ | ^X | ||
0001 1001 | 19 | EM | ␙ | ^Y | ||
0001 1010 | 1A | SUB | ␚ | ^Z | ||
0001 1011 | 1B | ESC | ␛ | ^[ | ||
0001 1100 | 1C | FS | ␜ | ^\ | ||
0001 1101 | 1D | GS | ␝ | ^] | ||
0001 1110 | 1E | RS | ␞ | ^^ | ||
0001 1111 | 1F | US | ␟ | ^_ | ||
0111 1111 | 7F | DEL | ␡ | ^? |
可显示字符
0010 0000 | 20 | (space) | |
0010 0001 | 21 | ||
0010 0010 | 22 | ||
0010 0011 | 23 | ||
0010 0100 | 24 | [) | |
0010 0101 | 25 | ||
0010 0110 | 26 | ||
0010 0111 | 27 | ||
0010 1000 | 28 | ||
0010 1001 | 29 | ||
0010 1010 | 2A | ||
0010 1011 | 2B | ||
0010 1100 | 2C | ||
0010 1101 | 2D | ||
0010 1110 | 2E | ||
0010 1111 | 2F | ||
0011 0000 | 30 | ||
0011 0001 | 31 | ||
0011 0010 | 32 | ||
0011 0011 | 33 | ||
0011 0100 | 34 | ||
0011 0101 | 35 | ||
0011 0110 | 36 | ||
0011 0111 | 37 | ||
0011 1000 | 38 | ||
0011 1001 | 39 | ||
0011 1010 | 3A | ||
0011 1011 | 3B | ||
0011 1100 | 3C | ||
0011 1101 | 3D | ||
0011 1110 | 3E | ||
0011 1111 | 3F |
0100 0000 | 40 | ||
0100 0001 | 41 | ||
0100 0010 | 42 | ||
0100 0011 | 43 | ||
0100 0100 | 44 | ||
0100 0101 | 45 | ||
0100 0110 | 46 | ||
0100 0111 | 47 | ||
0100 1000 | 48 | ||
0100 1001 | 49 | ||
0100 1010 | 4A | ||
0100 1011 | 4B | ||
0100 1100 | 4C | ||
0100 1101 | 4D | ||
0100 1110 | 4E | ||
0100 1111 | 4F | ||
0101 0000 | 50 | ||
0101 0001 | 51 | ||
0101 0010 | 52 | ||
0101 0011 | 53 | ||
0101 0100 | 54 | ||
0101 0101 | 55 | ||
0101 0110 | 56 | ||
0101 0111 | 57 | ||
0101 1000 | 58 | ||
0101 1001 | 59 | ||
0101 1010 | 5A | ||
0101 1011 | 5B | [ | |
0101 1100 | 5C | \ | |
0101 1101 | 5D | ] | |
0101 1110 | 5E | ||
0101 1111 | 5F |
0110 0000 | 60 | ||
0110 0001 | 61 | ||
0110 0010 | 62 | ||
0110 0011 | 63 | ||
0110 0100 | 64 | ||
0110 0101 | 65 | ||
0110 0110 | 66 | ||
0110 0111 | 67 | ||
0110 1000 | 68 | ||
0110 1001 | 69 | ||
0110 1010 | 6A | ||
0110 1011 | 6B | ||
0110 1100 | 6C | ||
0110 1101 | 6D | ||
0110 1110 | 6E | ||
0110 1111 | 6F | ||
0111 0000 | 70 | ||
0111 0001 | 71 | ||
0111 0010 | 72 | ||
0111 0011 | 73 | ||
0111 0100 | 74 | ||
0111 0101 | 75 | ||
0111 0110 | 76 | ||
0111 0111 | 77 | ||
0111 1000 | 78 | ||
0111 1001 | 79 | ||
0111 1010 | 7A | ||
0111 1011 | 7B | ||
0111 1100 | 7C | ||
0111 1101 | 7D | ||
0111 1110 | 7E |
可以看到大写字母的十进制表示为[65, 91),小写字母的十进制表示为[97, 123),数字的表示为[48, 58),其他字符可参见表格。根据ASCII表可以获得各种字母,such as
# 十进制的65表示的是大写字母A
print(char(65))
OutPut:
A
然后
print([chr(i) for i in range(65, 91)]) # 所有大写字母
print([chr(i) for i in range(97, 123)]) # 所有小写字母
print([chr(i) for i in range(48, 58)]) # 所有数字
OutPut:
['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
chr(i) for i in range(65, 91)
获得的是genexpr
的对象,通过[对象]
使对象转为列表,就可以输出了。
通过str.join(list)
函数完成的是在list的各元素见插入str,是list转换为str,那么
print(''.join([chr(i) for i in range(65, 91)])) # 所有大写字母的str形式
OutPut:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
- 方式二:通过string模块
在string这个模块包中,封装了各种字符,通过下述方式可以get到
import string # 导入string这个模块
print(string.digits) # 输出包含数字0~9的字符串
print(string.ascii_letters) # 包含所有字母(大写或小写)的字符串
print(string.ascii_lowercase) # 包含所有小写字母的字符串
print(string.ascii_uppercase) # 包含所有大写字母的字符串
print(string.punctuation) # 包含所有标点的字符串
print(string.ascii_letters) # 与string.letters一样
OutPut:
0123456789
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~