python结构解压

标签 python perl struct unpack

我正在尝试转换以下 perl 代码:

unpack(.., "Z*")

对于 python,但是在 struct.unpack() 中缺少“*”格式修饰符似乎使这成为不可能。有没有办法在 python 中做到这一点?

附言来自 perldoc 的 perl 中的“*”修饰符 - 为重复计数提供 * 而不是数字意味着使用剩下的许多项目,...

所以虽然 python 像 perl 一样有一个数字重复计数,但它似乎缺少 * 重复计数。

最佳答案

python 的struct.unpack 没有Z 格式

Z  A null-terminated (ASCIZ) string, will be null padded.

我觉得

unpack(.., "Z*")

会是:

data.split('\x00')

虽然这样去掉了空值

关于python结构解压,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5849167/

相关文章:

perl - 如何在 Cygwin 中安装 Perl 库?

C 程序以 -1 (0xFFFFFFFF) 终止,似乎没有任何原因?

go - 包的类型不能用作 vendored 包的类型

c++ - 从文件中读取数据到结构数组 C++

c++ - 在 C++ 程序中嵌入 Perl 脚本

linux - cgi-bin 中的 Perl 脚本不执行带参数的 shell 脚本

python - 如何使用 Selenium webdriver 和 Python 一一点击链接

python - 与请求(python 2.7)一样获取图像文件,然后使用帖子发送到服务器

python - 如何在 Django 表单中*仅*隐藏输入类型文件的按钮(不是整个元素)?

python - 合并两个日期时间索引的 pandas.dataframe 对象