编码解码
前言
python学习课程实时的笔记,方便自己复习。
一、字节码
字节码(Byte-code)是一种包含执行程序,由一序列 op 代码/数据对组成的二进制文件,是一种中间码。字节是电脑里的数据量单位。
字符串是以字符为单位的,字节码是以字节为单位的。
执行下面代码你就会知道区别。
# 字节码bytes
a = 'hello'
b = b'hello'
print(a)
print(type(a))
print(b) # b'hello'
print(type(b)) # <class 'bytes'>
二、编码解码
1.unicode
Unicode(又称统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。
2.encode()
作用:将其他的编码格式的字符串转换成unicode万国码编码
代码如下(示例):
a = '你好!'
print(a)
print(type(a)) # <class 'str'>
a1 = a.encode() # 编码
print('编码后:', a1)
print(type(a1)) # <class 'bytes'>
运行结果如下:
3.decode()
和 encode() 方法正好相反,decode() 方法用于将 bytes 类型的二进制数据转换为 str 类型,这个过程也称为“解码”。
代码如下(示例):
str1 = b'\xe5\x92\xb1\xe4\xbb\xac\xe6\x98\xaf2107-1\xe7\x8f\xad\xef\xbc\x81'
str2 = str1.decode()
print(str2)
运行截图如下: