1 # bytes 与 int 2 b=b'x01x02' 3 num=int.from_bytes(b,'little') 4 print('bytes转int:',num) 5 6 b1=num.to_bytes(2,'little') 7 print('int转bytes:',b1) 8 9 #bytes 与十六进制string 10 hs=''.join(['%02X' %x for x in b]) 11 print('bytes转十六进制字符串:',hs) 12 bs=bytes.fromhex(hs) 13 print('十六进制字符串转bytes:',bs) 14 # print(bytes.fromhex(hex(78)[2:])) 15 16 #int 与 string 17 s='abcd' 18 num=int(s,16) 19 print('字符串转int:',num) 20 print('int转十六进制字符串:',hex(num))
输出:
bytes转int: 513
int转bytes: b'x01x02'
bytes转十六进制字符串: 0102
十六进制字符串转bytes: b'x01x02'
字符串转int: 43981
int转十六进制字符串: 0xabcd
其他转换:
int(x [,base ]) 将x转换为一个整数
long(x [,base ]) 将x转换为一个长整数
float(x ) 将x转换到一个浮点数
str(x ) 将对象 x 转换为字符串
eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s ) 将序列 s 转换为一个元组
list(s ) 将序列 s 转换为一个列表
chr(x ) 将一个整数转换为一个字符
ord(x ) 将一个字符转换为它的整数值
hex(x ) 将一个整数转换为一个十六进制字符串
oct(x ) 将一个整数转换为一个八进制字符串
以下是 bytes 的语法:
class bytes([source[, encoding[, errors]]])
参数
- 如果 source 为整数,则返回一个长度为 source 的初始化数组;
- 如果 source 为字符串,则按照指定的 encoding 将字符串转换为字节序列;
- 如果 source 为可迭代类型,则元素必须为[0 ,255] 中的整数;
- 如果 source 为与 buffer 接口一致的对象,则此对象也可以被用于初始化 bytearray。
- 如果没有输入任何参数,默认就是初始化数组为0个元素。