import struct
# 示例代码:打包和解包数据
# 定义一个包含不同类型数据的元组
data = (1, 2.34, 'hello')
# 打包数据为二进制字符串
# 格式字符串解释:
#   i - 有符号整数 (4 字节)
#   f - 浮点数 (4 字节)
#   5s - 字符串,长度为 5 的字节串
packed_data = struct.pack('if5s', *data)
print(f"Packed data: {packed_data}")
# 解包二进制字符串回原始数据
# 注意:解包时需要指定正确的格式字符串,并且字符串长度必须匹配
unpacked_data = struct.unpack('if5s', packed_data)
# 解包后的字符串会包含填充的空字符,使用 decode() 和 strip() 去除
unpacked_data = (unpacked_data[0], unpacked_data[1], unpacked_data[2].decode().strip('\x00'))
print(f"Unpacked data: {unpacked_data}")import struct 导入 Python 的 struct 模块,用于处理二进制数据。data。struct.pack 函数将数据打包成二进制字符串。格式字符串 'if5s' 表示依次打包一个整数、一个浮点数和一个长度为 5 的字符串。struct.unpack 函数将二进制字符串解包回原始数据。注意解包时需要使用相同的格式字符串。\x00),因此在解包后需要使用 decode() 和 strip() 方法去除这些多余的字符。上一篇:python在线编译
下一篇:python global用法
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站