Python3中str、bytes、bytearray转化

2023-05-14 08:05:29 转化 python3 str

简介

str是采用Unicode编码方式的序列,主要用于显示
bytes是字节序列,主要用于网络和文件传输
bytearray和bytes是一样的,只是它是可变的,它们的关系和str与list类似

str和bytes的相互转化就是编码和解码

str转bytes

使用函数encode

In [2]: s1 = "123abc456ffff"                                                                                                                                                                                                                                                           
In [4]: b = s1.encode("utf-8")                                                                                                                                                  
In [5]: print(b)                                                                                                                                                         
b'123abc456ffff'
In [6]: 

bytes转str

使用函数decode

In [6]: s2 = b.decode("utf-8")                                                                                                                                           
In [7]: print(s2)                                                                                                                                                        
123abc456ffff
In [8]: 

如果是定义一个bytes:

b = b'123abc456ffff'

bytes和str转化为bytearray

bytes和str转化为bytearray都依赖于bytearray函数

bytes --> bytearray

In [8]: b = b'dafafasfasfsad22136436'
In [10]: s1 = bytearray(b) 
In [11]: print(s1)                                                                                                                                  
bytearray(b'dafafasfasfsad22136436')
In [12]:

str–>bytearray

In [8]: b = 'dafafasfasfsad22136436'
In [10]: s1 = bytearray(b) 
In [11]: print(s1)                                                                                                                                  
bytearray(b'dafafasfasfsad22136436')
In [12]:

hex字符串转为bytearray

In [12]: hexs = "1289"                                                                                                                              
In [13]: br = bytearray.fromhex(hexs)                                                                                                               
In [14]: print(br)                                                                                                                                  
bytearray(b'\x12\x89')
In [15]: 

bytearray转为str和bytes

byarray=bytearray("aabbcc",encoding='utf-8')
str=byarray.decode('utf-8')
bytes=bytes(byarray)
print (byarray)
bytearray(b'aabbcc')
print(str)
aabbcc
print(bytes)
b'aabbcc'

到此这篇关于python3中str、bytes、bytearray转化的文章就介绍到这了,更多相关python3 str bytes bytearray转化内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

相关文章