将整个二进制文件读入 Python

2023-12-27

我需要从 Python 导入一个二进制文件——内容是有符号的 16 位整数,大端字节序。

以下堆栈溢出问题建议如何一次提取多个字节,但这是否是扩展以读取整个文件的方法?

  • 在Python中读取一些二进制文件 https://stackoverflow.com/questions/1035340/reading-binary-file-in-python

  • 在Python中接收16位整数 https://stackoverflow.com/questions/875046/recieving-16-bit-integers-in-python

我想创建一个类似的函数:

from numpy import *
import os

def readmyfile(filename, bytes=2, endian='>h'):
    totalBytes = os.path.getsize(filename)
    values = empty(totalBytes/bytes)
    with open(filename, 'rb') as f:
        for i in range(len(values)):
            values[i] = struct.unpack(endian, f.read(bytes))[0]
    return values

filecontents = readmyfile('filename')

但这是相当慢的(文件是 165924350 字节)。有没有更好的办法?


Use numpy.fromfile.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将整个二进制文件读入 Python 的相关文章

随机推荐

  • 有没有办法使用 Selenium 和 Python 绑定执行鼠标悬停(悬停在元素上)?

    Reading here http groups google com group selenium developers browse thread thread eebb4269d53b4a01 显然曾经有一个RenderedWebEl
  • 春季预定的固定利率无法正常工作

    正如标题所示 我尝试使用 Scheduled 注释的固定 Rate 参数来每秒调用一个函数 这是我正在使用的代码 execute once every second Scheduled fixedRate 1000 private void
  • Hibernate:我需要flush()吗?

    我有双向一对多关系 我试图像在这个文档中那样坚持它 http docs jboss org hibernate core 3 3 reference en html example parentchild html example pare
  • const 引用是否会延长临时对象返回的临时对象的寿命?

    我知道常量引用可以延长本地临时变量的寿命 现在我问自己是否可以将这种专有性扩展到临时对象链上 也就是说 我是否可以安全地定义 std string const foo aBar getTemporaryObject1 getTemporar
  • 在 OS X 上,将 SQLite 数据库放在哪里以防止其在更新期间被覆盖?

    我正在开发我的第一个 OS X 应用程序 该应用程序将通过 Mac App Store 分发 该应用程序使用 sqlite 数据库 我目前将其保存在与应用程序文件依赖项的其余部分相同的位置 我正在使用 Qt Framework 来开发该应用
  • Antlr4 解析异常

    我正在使用 Antlr4 解析语法并遇到一个我无法理解的问题 简而言之 问题是 Antlr4 解析器无法完全解析我原始语法中的测试字符串 但是当我添加多余的规则时 解析就完成了 我提供了语法的简化版本来说明这个问题 grammar my s
  • 从firebase中检索除某些字段之外的所有数据

    我正在开发一个使用 Angular Firebase 和云函数的项目 我的数据如下 我想检索除 profile picture 字段之外的所有数据 在云函数中 exports getPartner functions https onReq
  • 您知道如何在 Databricks 集群上安装“ODBC Driver 17 for SQL Server”吗?

    我正在尝试使用 pyodbc python 库从 Databricks 笔记本连接到 Azure SQL 数据仓库 当我执行代码时 我收到此错误 Error 01000 01000 unixODBC Driver Manager Can t
  • 如果它在本地堆上分配,为什么称为 Marshal.AllocHGlobal?

    来自 MSDN 文档Marshal AllocHGlobal http msdn microsoft com en us library s69bkh17 aspx AllocHGlobal 是 Marshal 类中的两种内存分配方法之一
  • 如何从同步代码Python调用异步函数

    所以我被锁定在我的桌面应用程序之后的 python 3 6 2 解释器上 我想要的是从同步方法或函数调用异步函数 当从桌面应用程序调用 python 函数时 它必须是一个不能等待的普通函数 从桌面应用程序中 我可以发送 url 列表 而我想
  • 使用多个数据库模式的 JPA

    我在使用 JPA Spring 时遇到了一个特定问题 如何动态地将模式分配给实体 我们有属于模式 AD 的 TABLE1 和属于 BD 的 TABLE2 Entity Table name TABLE1 schema S1D Entity
  • Python脚本与linux shell交互

    我有一个 Python 脚本 需要通过命令行与用户交互 同时记录输出的任何内容 我目前有这个 lots of code popen subprocess Popen args shell True stdin sys stdin stdou
  • R 工作区,即 .R 文件

    如何在新会话中为该会话中的新对象启动新的 R 文件默认值 工作空间是 RData 文件 而不是 R 文件 R 文件是源文件 即包含代码的文本文件 这有点棘手 如果保存了工作区 则 R 会在当前工作目录中保存两个文件 一个包含对象的 RDat
  • 向URL二维码添加数据?

    是否可以创建一个包含 URL 数据 数字 的 QR 码 我可以从自己的应用程序中对其进行解码 另外 我需要它的方式是 如果有人尝试从常规 QR 扫描仪扫描它 它只会定向到 URL 我正在应用程序上读取二维码卡来读取数据 不同位置的卡很少 因
  • React useEffect 清理函数运行多次?

    React hook noob在这里 鉴于这个例子 useEffect gt function handleStatusChange status setIsOnline status isOnline ChatAPI subscribeT
  • Jersey 多部分客户端上传

    我设计了一个多部分 Jersey REST 服务 如下所示 用于接收多部分请求 文件上传 并将文件保存在磁盘位置 POST Path Upload Produces MediaType TEXT HTML Consumes MediaTyp
  • 根据一列值对子数组数据进行分组和合并

    我在下面的 PHP 代码中有一个数组 我想将该数组转换为按数据值分组 简化数组总是很困难 原始数组 array date gt 2017 08 22 AAA gt 1231 date gt 2017 08 21 AAA gt 1172 da
  • 从表单发送电子邮件(仅限 HTML、javascript)

    从表单发送电子邮件 以下是基本 HTML 代码的链接 W3学校 http www w3schools com html tryit asp filename tryhtml form mail 写完评论 姓名和电子邮件并单击 发送 按钮后
  • 如何完全重置警告

    如何在不重新启动 python 的情况下再次看到警告 现在我只见到他们一次 例如考虑以下代码 import pandas as pd pd Series 1 0 I get RuntimeWarning divide by zero enc
  • 将整个二进制文件读入 Python

    我需要从 Python 导入一个二进制文件 内容是有符号的 16 位整数 大端字节序 以下堆栈溢出问题建议如何一次提取多个字节 但这是否是扩展以读取整个文件的方法 在Python中读取一些二进制文件 https stackoverflow