Python-字符与ASCII码

字符和ASCII码转换

ord('a')  # 97
chr(97)   # 'a'
print('a', ord('a'), sep=":")  # a:97

字符a的ASCII码的进制转换

bin(ord('a'))   # '0b1100001' (binary, 二进制)
oct(ord('a'))   # '0o141' (octal, 八进制)
hex(ord('a'))   # '0x61' (hexadecimal, 十六进制)

int("0b1100001", base=2)  # 97 (integer, 整数)
int("0o141", base=8)      # 97
int("0x61", base=16)      # 97

字符的编码与解码

str('a').encode("ascii")  # b'a' (bytes, 字节序列)
b'\x61'.decode("ascii")  # 'a'
type(b'\x61'.decode("ascii"))  # str, 字符串

'\141'  # 'a'

ASCII码表范围

  • 0x30-0x39 这个范围是数字 (数字的编码减去0x30正好得到数字本身)
  • 0x41-0x5A 这个范围是大写字母
  • 0x61-0x7A 这个范围是小写字母
ord('9') - 0x30         # 9
ord('a')-ord('A')       # 32
hex(ord('a')-ord('A'))  # '0x20'
posted @ 2022-07-23 23:12  Khrushchefox  阅读(373)  评论(0编辑  收藏  举报