区别"/>
encode和decode的区别
字节序列和字符串是Python中两种不同的数据类型,它们的主要区别在于表示和处理方式!
字节序列(Bytes):
字节序列是一种二进制数据类型,它由一系列字节组成。字节是计算机存储信息的基本单位,每个字节可以表示0到255之间的数值。字节序列通常用于存储非文本数据,如图像、音频、视频或其他二进制文件。在Python中,字节序列可以使用bytes
类型表示,它可以通过b'hello'
或bytes([72, 101, 108, 108, 111])
等方式创建。
字符串(String):
字符串是由零个或多个字符组成的序列。字符串主要用于表示文本数据,包括字母、数字、符号等。在Python中,字符串使用str
类型表示,它可以通过直接在引号中输入字符序列的方式创建。例如,'hello world'
是一个包含12个字符的字符串。
总结:
- 字节序列是用于存储二进制数据的,而字符串是用于存储文本数据的。
- 字节序列由一系列字节组成,可以包含任意数值,而字符串由字符组成,每个字符都有一个对应的Unicode码点。
- 在Python中,字节序列使用
bytes
类型表示,而字符串使用str
类型表示。 - 在处理文本数据时,通常使用字符串类型;而在处理图像、音频等二进制数据时,通常使用字节序列类型。
实战
冷知识:
print
函数默认将字符串以文本形式输出,而不是以二进制形式输出。
如果你想以二进制形式输出加密后的结果,可以使用 binascii
模块中的 hexlify
函数,它将返回一个十六进制字符串,表示原始字节序列的二进制表示形式
import binascii
def a():password = "9999"encrypted = password.encode()print(binascii.hexlify(encrypted)) # 以十六进制形式输出加密后的结果print(encrypted.decode()) # 以文本形式输出解密后的结果
if __name__ == '__main__':a()
更多推荐
encode和decode的区别
发布评论