相关疑难解决方法(0)

Python:如何使用struct.pack_into将不同类型的数据打包到字符串缓冲区中

我正在尝试将一些unsigned int数据打包到使用创建的字符串缓冲区中ctypes.create_string_buffer.

以下是代码段,以及显示错误在键盘上的运行示例:

import struct
import ctypes
import binascii

buf = ctypes.create_string_buffer(16)
struct.pack_into("=I=I=I", buf, 0, 1, 2, 3)
print binascii.hexlify(buf)
Run Code Online (Sandbox Code Playgroud)

这会产生以下错误:

...
struct.error: bad char in struct format
Run Code Online (Sandbox Code Playgroud)

如果底层缓冲区是特定的C类型,则文档不会提示您是否可以打包不同类型的数据.在这种情况下,尝试将unsigned int数据打包到具有底层c_char类型的字符串缓冲区中.任何人都知道这样做的解决方案,或者是否有特定的方法来创建可以打包任何类型的数据的缓冲区?

c python struct

10
推荐指数
1
解决办法
1万
查看次数

在 Python 中将 Epoch DateTime 转换为字节数组

我试图在 python 中将纪元日期时间转换为字节数组,但它是 10 字节,它应该是 4 字节。

from time import time
curTime = int(time.time())
b = bytearray(str(curTime))
len(b)                 #comming as 10
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我出错的地方

python epoch

2
推荐指数
1
解决办法
5349
查看次数

标签 统计

python ×2

c ×1

epoch ×1

struct ×1