字符编码基础:
1.获取字符编码点位置
print(ord('A')) # 65 获取字符编码位置(点)
print(chr(121)) # y
2.编码和解码(bytes)
s = '优品课堂' # 编码
# print(s.encode('utf-8')) # b'\xe4\xbc\x98\xe5\x93\x81\xe8\xaf\xbe\xe5\xa0\x82'
d = s.encode('utf-8')
# 解码
# print(d.decode('utf-8')) # 优品课堂
s = bytes('优品课堂', 'utf-8')
# print(s) # b'\xe4\xbc\x98\xe5\x93\x81\xe8\xaf\xbe\xe5\xa0\x82'
bytes_str = b'abc' # 字节字符串
# print(type(bytes_str)) # <class 'bytes'>
3.编码和解码(bytearray)
s1 = 'abc'
s2 = '优品'
ba = bytearray(s1, 'utf-8')
# print(ba) # bytearray(b'abc') 类似于列表方法
# print(ba[0]) # 97
# print(ba[1]) # 98
ba_s2 = bytearray(s2, 'utf-8')
# print(ba_s2) # bytearray(b'\xe4\xbc\x98\xe5\x93\x81') 类似于列表方法
# print(ba_s2[0]) # 228 存储的是编码位置
# print(ba_s2[1]) # 188
# print(len(ba_s2)) # 6
# ba_s2.append(25) # 类似于列表方法
print(ba_s2.decode('utf-8')) # 优品
4.Bom处理
# bom处理(-sig)
a = open('data.txt', 'w', encoding='utf-8-sig').write('优品课堂 classroom.com')
# 优品课堂 classroom.com
a = open('data.txt', 'r', encoding='utf-8-sig').read()
print(a)