从文件中读取和存储任意字节长度整数

2023-11-23

我试图通过在 numpy 中进行解析/数据积累来加速我去年编写的二进制文件解析器。 numpy 定义自定义数据结构并将数据从二进制文件提取到其中的能力看起来就像我所需要的,除了这些文件中的某些字段是“非标准”长度(例如 6 字节)的无符号整数。由于我使用的是 Python 2.7,所以我制作了自己的 int.from_bytes 模拟版本来处理这些字段,但如果有任何方法可以在 numpy 中将这些字段本地读取为整数,那显然会更快、更可取。


Numpy 不支持任意字节长度的整数,并且使用 ctypes 位域会带来更多麻烦。

我建议使用矢量化切片将数据转换为下一个更高的标准大小整数:

buf = "000000111111222222"
a = np.ndarray(len(buf), np.dtype('>i1'), buf)
e = np.zeros(len(buf) / 6, np.dtype('>i8'))
for i in range(3):
    e.view(dtype='>i2')[i + 1::4] = a.view(dtype='>i2')[i::3]
[hex(x) for x in e]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从文件中读取和存储任意字节长度整数 的相关文章

  • 没有名为 crypto.cipher 的模块

    我现在正在尝试加密一段时间 我最近得到了这个基于 python 的密码器 名为PythonCrypter https github com jbertman PythonCrypter 我对 Python 相当陌生 当我尝试通过终端打开 C
  • Python 中的 Lanczos 插值与 2D 图像

    我尝试重新缩放 2D 图像 灰度 图像大小为 256x256 所需输出为 224x224 像素值范围从 0 到 1300 我尝试了两种使用 Lanczos 插值来重新调整它们的方法 首先使用PIL图像 import numpy as np
  • SQLAlchemy 通过关联对象声明式多对多自连接

    我有一个用户表和一个朋友表 它将用户映射到其他用户 因为每个用户可以有很多朋友 这个关系显然是对称的 如果用户A是用户B的朋友 那么用户B也是用户A的朋友 我只存储这个关系一次 除了两个用户 ID 之外 Friends 表还有其他字段 因此
  • 为 Anaconda Python 安装 psycopg2

    我有 Anaconda Python 3 4 但是每当我运行旧代码时 我都会通过输入 source activate python2 切换到 Anaconda Python 2 7 我的问题是我为 Anaconda Python 3 4 安
  • Django:按钮链接

    我是一名 Django 新手用户 尝试创建一个按钮 单击该按钮会链接到我网站中的另一个页面 我尝试了一些不同的例子 但似乎没有一个对我有用 举个例子 为什么这不起作用
  • 从字符串中删除识别的日期

    作为输入 我有几个包含不同格式日期的字符串 例如 彼得在16 45 我的生日是1990年7月8日 On 7 月 11 日星期六我会回家 I use dateutil parser parse识别字符串中的日期 在下一步中 我想从字符串中删除
  • 如何使用 Ansible playbook 中的 service_facts 模块检查服务是否存在且未安装在服务器中?

    我用过service facts检查服务是否正在运行并启用 在某些服务器中 未安装特定的软件包 现在 我如何知道这个特定的软件包没有安装在该特定的服务器上service facts module 在 Ansible 剧本中 它显示以下错误
  • SQLALchemy .query:类“Car”的未解析属性引用“query”

    我有一个这里已经提到的问题https youtrack jetbrains com issue PY 44557 https youtrack jetbrains com issue PY 44557 但我还没有找到解决方案 我使用 Pyt
  • 以编程方式停止Python脚本的执行? [复制]

    这个问题在这里已经有答案了 是否可以使用命令在任意行停止执行 python 脚本 Like some code quit quit at this point some more code that s not executed sys e
  • 如何使用 OpencV 从 Firebase 读取图像?

    有没有使用 OpenCV 从 Firebase 读取图像的想法 或者我必须先下载图片 然后从本地文件夹执行 cv imread 功能 有什么办法我可以使用cv imread link of picture from firebase 您可以
  • 从 Flask 访问 Heroku 变量

    我已经使用以下命令在 Heroku 配置中设置了数据库变量 heroku config add server xxx xxx xxx xxx heroku config add user userName heroku config add
  • Flask如何获取请求的HTTP_ORIGIN

    我想用我自己设置的 Access Control Allow Origin 标头做出响应 而弄清楚请求中的 HTTP ORIGIN 参数在哪里似乎很混乱 我在用着烧瓶 0 10 1 以及HTTP ORIGIN似乎是这个的特点之一object
  • Pygame:有没有简单的方法可以找到按下的任何字母数字的字母/数字?

    我目前正在开发的游戏需要让人们以自己的名义在高分板上计时 我对如何处理按键有点熟悉 但我只处理过寻找特定的按键 有没有一种简单的方法可以按下任意键的字母 而不必执行以下操作 for event in pygame event get if
  • IO 密集型任务中的 Python 多线程

    建议仅在 IO 密集型任务中使用 Python 多线程 因为 Python 有一个全局解释器锁 GIL 只允许一个线程持有 Python 解释器的控制权 然而 多线程对于 IO 密集型操作有意义吗 https stackoverflow c
  • 使用 \r 并打印一些文本后如何清除控制台中的一行?

    对于我当前的项目 有一些代码很慢并且我无法使其更快 为了获得一些关于已完成 必须完成多少的反馈 我创建了一个进度片段 您可以在下面看到 当你看到最后一行时 sys stdout write r100 80 n I use 80覆盖最终剩余的
  • Pandas:merge_asof() 对多行求和/不重复

    我正在处理两个数据集 每个数据集具有不同的关联日期 我想合并它们 但因为日期不完全匹配 我相信merge asof 是最好的方法 然而 有两件事发生merge asof 不理想的 数字重复 数字丢失 以下代码是一个示例 df a pd Da
  • 向 Altair 图表添加背景实心填充

    I like Altair a lot for making graphs in Python As a tribute I wanted to regenerate the Economist graph s in Mistakes we
  • 对年龄列进行分组/分类

    我有一个数据框说df有一个柱子 Ages gt gt gt df Age 0 22 1 38 2 26 3 35 4 35 5 1 6 54 我想对这个年龄段进行分组并创建一个像这样的新专栏 If age gt 0 age lt 2 the
  • 在 Qt 中自动调整标签文本大小 - 奇怪的行为

    在 Qt 中 我有一个复合小部件 它由排列在 QBoxLayouts 内的多个 QLabels 组成 当小部件调整大小时 我希望标签文本缩放以填充标签区域 并且我已经在 resizeEvent 中实现了文本大小的调整 这可行 但似乎发生了某
  • 如何使用 Pycharm 安装 tkinter? [复制]

    这个问题在这里已经有答案了 I used sudo apt get install python3 6 tk而且效果很好 如果我在终端中打开 python Tkinter 就可以工作 但我无法将其安装在我的 Pycharm 项目上 pip

随机推荐

  • 如何找到 int[] 的大小? [复制]

    这个问题在这里已经有答案了 I have int list 1 2 3 如何获得尺寸list 我知道对于 char 数组 我们可以使用strlen array 查找尺寸 或检查 0 在数组的末尾 I tried sizeof array s
  • 了解 Spark 序列化

    在 Spark 中 我们如何知道哪些对象在 driver 上实例化 哪些对象在 executor 上实例化 以及如何确定哪些类需要实现 Serialized 序列化对象意味着将其状态转换为字节流 以便字节流可以恢复为对象的副本 如果 Jav
  • 何时使用 sys.path.append 以及何时修改 %PYTHONPATH% 就足够了

    所以 事实证明我在 PYTHONPATH 定义中缺少一个分号 但这只让我到目前为止 由于某种原因 我的脚本无法作为计划任务 在 WinXP 上 运行 直到我明确地将 PYTHONPATH 中的目录添加到脚本顶部 问题是 我什么时候需要显式地
  • 角度错误:如果在表单标签内使用 ngModel,则必须设置 name 属性或 [duplicate]

    这个问题在这里已经有答案了 关于该错误还有很多类似的问题和答案 如果 ngModel 在表单标签内使用 则必须设置 name 属性 或者必须在 ngModelOptions 中将表单控件定义为 独立 解决方案是定义name消息中描述的属性
  • 不同移动设备中的加速度计和陀螺仪精度

    我想使用移动设备的传感器 加速度计 指南针 陀螺仪 这个问题已经在几个地方讨论过 例如 here and here 第一步是确定哪个平台最适合实施此类系统 主要的可能性是三星的 Galaxy Galaxy tab 或 iphone ipad
  • 开放式 Java SMB 服务器实现

    Java 中是否有 SMB CIFS 服务器的开放实现 我能找到的唯一实现是 Alfresco 但它不是开源的 一个相关的问题 假设没有这样的实现 我很惊讶没有一个库提供 SMB 的子集 例如用于简单的文件传输 我的直觉是 实现一个简单的服
  • C/C++ 严格别名、对象生命周期和现代编译器

    我对 C 严格别名规则及其可能的含义感到困惑 考虑以下代码 int main int32 t a 5 float f float a f 1 0f int32 t b a Probably not well defined float g
  • 通过自动更改所有函数和变量名称来模糊生产中的反应代码

    是否有任何库可以帮助模糊生产的反应构建 就像是 const MyComp gt const propa propb useMyfunc return to const xyz gt const yxz zyx zzz return 正确的选
  • IntelliJ(使用 gradle):即使已安装也找不到 Kotlin 插件

    我正在尝试使用 gradle 构建我的项目 但似乎找不到我的 kotlin 插件 即使我确实使用 从磁盘安装插件 添加了它 这是我收到的错误 无法解析配置 classpath 的所有依赖项 找不到 org jetbrains kotlin
  • 将常量值从 _layout.cshtml 传递给 Angular

    好的 我在 ASP Net SPA 项目的 Layout cshtml 中有一个常量变量 我将传递它们 以便 Angular 可以访问它们 我怎样才能做到这一点 例如 这是我试图传递的一个值 var lenderValues Html Ac
  • 如何使用phonegap在iOS应用程序中打开网页?

    我只想在我的 iOS PhoneGap 应用程序中只有一个视图 该视图将是一个网页 我怎样才能用特定的网址加载这个唯一的视图 我想你是通过 javascript 来做到这一点的 如果是的话 怎么做 我不是 html javascript 脚
  • ASP.Net 中的数据缓存

    我需要从一些参考数据中填充一些下拉框 即城市列表 国家列表等 我需要将其填写在各种网络表格中 我认为 我们应该在应用程序中缓存这些数据 这样我们就不会在每个表单上都访问数据库 我是缓存和 ASP Net 的新手 请建议我如何做到这一点 我总
  • 查找窗口失败 - 2 个 Galaxy Nexus 上同一应用程序的不同行为

    我有两部 Galaxy Nexus 手机 这些手机具有相同的固件版本 4 0 2 相同的内部版本号 相同的内核版本 当我使用 Eclipse 将同一个应用程序部署到两部手机时 我看到每部手机都有不同的行为 在一部手机上 一切都按预期进行 在
  • WCF InvalidOperationException:绑定实例已与侦听 URI 关联

    我是 WCF 的初学者 正在学习 Essential WCF 我在使用 ServiceContract NameSpace 和 Name 时遇到问题 当我运行代码时 我捕获了以下 InvalidOperationException 但我无法
  • jQuery的val()方法改变似乎并没有改变DOM

    Doing someId val newValue 不改变 DOM 我可以检索这个值 someId val 但是 DOM 中的元素仍然没有 value 属性 如何设置输入组件的值并更改 DOM 我在用着jQuery 1 5 1 val do
  • 在 R dplyr 中按计数扩展列

    我有一个因子列 我想将每个因素分散到一列中 然后通过每个 id 出现的该因素的计数来填补空白 假设我们有 car lt c a b b b c c a b b b c c type lt c good regular bad good re
  • 适合从扫描条形码 iPhone 应用程序获取产品详细信息的 api?

    正在开发示例条形码扫描仪应用程序 我使用 ZBar API 扫描产品中的条形码 它工作得很好 现在 希望获得扫描条形码的产品 我想从 api 获取产品的以下详细信息 Product Name Product Price Selling fe
  • 从 Spark 作业中调用 JDBC 到 impala/hive 并创建表

    我正在尝试在 scala 中编写一个 Spark 作业 该作业将打开与 Impala 的 jdbc 连接 并让我创建一个表并执行其他操作 我该怎么做呢 任何例子都会有很大的帮助 谢谢你 val JDBCDriver com cloudera
  • MS SQL Server 的“之间”是否包括范围边界?

    例如可以 SELECT foo FROM bar WHERE foo BETWEEN 5 AND 10 选择 5 和 10 还是将它们排除在范围之外 BETWEEN 运算符包含在内 来自在线书籍 如果 BETWEEN 的值返回 TRUE t
  • 从文件中读取和存储任意字节长度整数

    我试图通过在 numpy 中进行解析 数据积累来加速我去年编写的二进制文件解析器 numpy 定义自定义数据结构并将数据从二进制文件提取到其中的能力看起来就像我所需要的 除了这些文件中的某些字段是 非标准 长度 例如 6 字节 的无符号整数