在Python中,struct模塊用于處理C結構體的打包和解包操作。它提供了一些函數來處理二進制數據和Python中的字符串之間的轉換。
下面是一些常用的struct模塊函數的用法:
import struct
# 將整數和浮點數打包為二進制數據
data = struct.pack('i f', 10, 3.14)
print(data) # b'\n\x00\x00\x00\x0b\x86\x1f@'
import struct
# 從二進制數據中解包整數和浮點數
data = b'\n\x00\x00\x00\x0b\x86\x1f@'
values = struct.unpack('i f', data)
print(values) # (10, 3.140000104904175)
import struct
# 計算結構體的大小
size = struct.calcsize('i f')
print(size) # 8
import struct
# 迭代解包二進制數據
data = b'\n\x00\x00\x00\x0b\x86\x1f@\n\x00\x00\x00\x16\xc0\xb0@'
for values in struct.iter_unpack('i f', data):
print(values) # (10, 3.140000104904175), (22, 22.5)
這里只是簡單介紹了struct模塊的一些常用函數的用法,你可以根據實際需求查閱官方文檔來了解更多詳細的用法和格式字符串的規則。