如何在 Python 中将长整型写为二进制?

2023-11-25

在 Python 中,长整数具有无限的精度。我想将 16 字节(128 位)整数写入文件。struct标准库仅支持最多 8 字节整数。array具有相同的限制。有没有办法在不屏蔽和移动每个整数的情况下做到这一点?

这里需要澄清一下:我正在写入一个将从非 Python 程序中读入的文件,所以 pickle 已经被淘汰了。全部 128 位均已使用。


我认为对于无符号整数(并忽略字节序)类似

import binascii

def binify(x):
    h = hex(x)[2:].rstrip('L')
    return binascii.unhexlify('0'*(32-len(h))+h)

>>> for i in 0, 1, 2**128-1:
...     print i, repr(binify(i))
... 
0 '\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
1 '\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01'
340282366920938463463374607431768211455 '\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff'

从技术上讲,可能会满足具有非 Python 特定输出、不使用显式掩码以及(我假设)不使用任何非标准模块的要求。不过,并不是特别优雅。

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

如何在 Python 中将长整型写为二进制? 的相关文章

  • 使用Python开发Web应用程序

    我一直在用 python 做一些工作 但这都是针对独立应用程序的 我很想知道 python 的任何分支是否支持 Web 开发 有人还会建议一个好的教程或网站吗 我可以从中学习一些使用 python 进行 Web 开发的基础知识 既然大家都说
  • 如何在python中读取多个文件中的文本

    我的文件夹中有许多文本文件 大约有 3000 个文件 每个文件中第 193 行是唯一包含重要信息的行 我如何使用 python 将所有这些文件读入 1 个文本文件 os 模块中有一个名为 list dir 的函数 该函数返回给定目录中所有文
  • InterfaceError:连接已关闭(使用 django + celery + Scrapy)

    当我在 Celery 任务中使用 Scrapy 解析函数 有时可能需要 10 分钟 时 我得到了这个信息 我用 姜戈 1 6 5 django celery 3 1 16 芹菜 3 1 16 psycopg2 2 5 5 我也使用了psyc
  • 将字符串转换为带有毫秒和时区的日期时间 - Python

    我有以下 python 片段 from datetime import datetime timestamp 05 Jan 2015 17 47 59 000 0800 datetime object datetime strptime t
  • Python PAM 模块的安全问题?

    我有兴趣编写一个 PAM 模块 该模块将利用流行的 Unix 登录身份验证机制 我过去的大部分编程经验都是使用 Python 进行的 并且我正在交互的系统已经有一个 Python API 我用谷歌搜索发现pam python http pa
  • 如何使用包含代码的“asyncio.sleep()”进行单元测试?

    我在编写 asyncio sleep 包含的单元测试时遇到问题 我要等待实际的睡眠时间吗 I used freezegun到嘲笑时间 当我尝试使用普通可调用对象运行测试时 这个库非常有用 但我找不到运行包含 asyncio sleep 的测
  • 如何使用 Scrapy 从网站获取所有纯文本?

    我希望在 HTML 呈现后 可以从网站上看到所有文本 我正在使用 Scrapy 框架使用 Python 工作 和xpath body text 我能够获取它 但是带有 HTML 标签 而且我只想要文本 有什么解决办法吗 最简单的选择是ext
  • Spark的distinct()函数是否仅对每个分区中的不同元组进行洗牌

    据我了解 distinct 哈希分区 RDD 来识别唯一键 但它是否针对仅移动每个分区的不同元组进行了优化 想象一个具有以下分区的 RDD 1 2 2 1 4 2 2 1 3 3 5 4 5 5 5 在此 RDD 上的不同键上 所有重复键
  • keras加载模型错误尝试将包含17层的权重文件加载到0层的模型中

    我目前正在使用 keras 开发 vgg16 模型 我用我的一些图层微调 vgg 模型 拟合我的模型 训练 后 我保存我的模型model save name h5 可以毫无问题地保存 但是 当我尝试使用以下命令重新加载模型时load mod
  • 运行多个 scrapy 蜘蛛的正确方法

    我只是尝试使用在同一进程中运行多个蜘蛛新的 scrapy 文档 http doc scrapy org en 1 0 topics practices html但我得到 AttributeError CrawlerProcess objec
  • 在 NumPy 中获取 ndarray 的索引和值

    我有一个 ndarrayA任意维数N 我想创建一个数组B元组 数组或列表 其中第一个N每个元组中的元素是索引 最后一个元素是该索引的值A 例如 A array 1 2 3 4 5 6 Then B 0 0 1 0 1 2 0 2 3 1 0
  • NameError:名称“urllib”未定义”

    CODE import networkx as net from urllib request import urlopen def read lj friends g name fetch the friend list from Liv
  • Python:尝试检查有效的电话号码

    我正在尝试编写一个接受以下格式的电话号码的程序XXX XXX XXXX并将条目中的任何字母翻译为其相应的数字 现在我有了这个 如果启动不正确 它将允许您重新输入正确的数字 然后它会翻译输入的原始数字 我该如何解决 def main phon
  • Python - 按月对日期进行分组

    这是一个简单的问题 起初我认为很简单而忽略了它 一个小时过去了 我不太确定 所以 我有一个Python列表datetime对象 我想用图表来表示它们 x 值是年份和月份 y 值是此列表中本月发生的日期对象的数量 也许一个例子可以更好地证明这
  • Python - 在窗口最小化或隐藏时使用 pywinauto 控制窗口

    我正在尝试做的事情 我正在尝试使用 pywinauto 在 python 中创建一个脚本 以在后台自动安装 notepad 隐藏或最小化 notepad 只是一个示例 因为我将编辑它以与其他软件一起使用 Problem 问题是我想在安装程序
  • 通过数据框与函数进行交互

    如果我有这样的日期框架 氮 EG 00 04 NEG 04 08 NEG 08 12 NEG 12 16 NEG 16 20 NEG 20 24 datum von 2017 10 12 21 69 15 36 0 87 1 42 0 76
  • 如何将 PIL 图像转换为 NumPy 数组?

    如何转换 PILImage来回转换为 NumPy 数组 这样我就可以比 PIL 进行更快的像素级转换PixelAccess允许 我可以通过以下方式将其转换为 NumPy 数组 pic Image open foo jpg pix numpy
  • 使用基于正则表达式的部分匹配来选择 Pandas 数据帧的子数据帧

    我有一个 Pandas 数据框 它有两列 一列 进程参数 列 包含字符串 另一列 值 列 包含相应的浮点值 我需要过滤出部分匹配列 过程参数 中的一组键的子数据帧 并提取与这些键匹配的数据帧的两列 df pd DataFrame Proce
  • 在 Python 类中动态定义实例字段

    我是 Python 新手 主要从事 Java 编程 我目前正在思考Python中的类是如何实例化的 我明白那个 init 就像Java中的构造函数 然而 有时 python 类没有 init 方法 在这种情况下我假设有一个默认构造函数 就像
  • Python:元类属性有时会覆盖类属性?

    下面代码的结果让我感到困惑 class MyClass type property def a self return 1 class MyObject object metaclass MyClass a 2 print MyObject

随机推荐

  • NodeJS 通过一个路由文件表达多个路由文件

    我正在学习 NodeJS 我有一个nodeJS API 项目 我想在路线中使用版本 因此我创建了以下文件夹结构 application app js routes V1 routes js users js 这是我的 app js 文件 v
  • SQL 多条件 CTE 递归

    在数据库中 每个标识符都有以下 2 条信息 控制他们的公司 以及他们拥有少量控制权的公司 大致意思是 2 个表 忽略一些唯一标识符 组织 orgid org immediate parent orgid 1 2 2 2 3 1 5 4 关系
  • C#程序导致蓝屏?

    这只是蓝屏显示的重要内容 我使用的是 Windows 7 x64 已检测到问题 Windows 已关闭以防止损坏 到您的计算机 PROCESS HAS LOCKED PAGES 停止 0x00000076 0x000000000000000
  • ng-init 是否像 ng-model 一样监视实例化属性的变化?

    ng init 是否像 ng model 一样监视实例化属性的变化 显然不是 所以我设置了一个手表 如下所示 app js var app angular module plunker app controller MainCtrl fun
  • Plinq、Cores 和 WithDegreeOfParallelism?

    据我了解 Plinq 决定打开多少个线程 每个线程位于不同核心的线程上 按核心数 Core 1 Core 2 Core 3 Core 4 因此 如果我有一个 Plinq 任务来查找所有前 1000 个素数 Plink将打开一个新的Threa
  • 使用 Android 的 AudioTrack 组合声音样本字节会产生噪音

    我正在构建一个相当简单的 Android 应用程序 sdk 修订版 14 ICS 它允许用户一次选择两个音频剪辑 均为 RIFF WAV 格式 小端 签名 PCM 16 位编码 并将它们组合在创造新声音的各种方式 我用于此组合的最基本方法如
  • 在 OpenCV C++ 中将图像的所有白色像素更改为透明

    我在 OpenCV 中有这张图片imgColorPanel imread newGUI png CV LOAD IMAGE COLOR 当我用灰度加载它时imgColorPanel imread newGUI png CV LOAD IMA
  • 智能分页算法[关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我正在寻找智能分页的示例算法 所谓聪明 我的意思是 我只想显示当前页面的 2 个相邻页面 因此我不会以长得可笑的页面列表结束 而是将其截断 这是一个简单的例子 可以让它更清楚 这就是
  • 如何在 Erlang 中读取整数?

    我正在尝试读取用户输入的整数 如 C 中的 cin gt gt nInput 我发现 io fread bif 来自http www erlang org doc man io html 所以我写这样的代码 ok X io fread 输入
  • 具有多个表的单个文本文件

    我正在尝试从具有多个表的单个文本文件导入数据 这些表的长度各不相同 但每个表之间有共同的间隔 每个表之间的分隔是一个数字后跟一个字符 例如 19 EOP 1 10 92 9144 202 1271 0 B 10 Dec 2014 11 46
  • 如何从 Win32 中的 func ptr 获取模块句柄?

    我正在研究虚拟机的本机调用绑定 其中一项功能是能够在运行时按名称查找标准 libc 函数 在 Windows 上 这变得有点麻烦 因为我需要获取进程中当前加载的 msvcrt 模块的句柄 通常这是 msvcrt dll 但也可能是其他变体
  • 为什么不可变对象受到 JVM GC 的喜爱?

    我知道JVM GC喜欢短寿命对象的原因 因为它可以在minor GC中收集 但为什么 JVM GC 喜欢不可变对象呢 编辑 Charlie Hunt 说 GC 喜欢他的不可变对象推介会 Thanks 如果 GC 可以知道某个对象不包含对任何
  • jQuery - 如何知道窗口是否正在调整宽度/高度或两者的大小?

    我在使用 jQuery 函数调整窗口大小时遇到 一些问题 resize 我想知道哪个尺寸变大 变小 宽度或高度 我需要这个 因为如果我只设置两个条件 如果宽度比 div 大 50px 如果高度比 div 大 50px pseudocode
  • 从 NSArray 获取单个属性的 NSArray

    我面临着一个非常常见的情况 我有一个 NSArray 它有一个自定义类型的对象 比如 Person Person 类具有以下属性 firstName lastName 和age 如何从具有 Person 对象的 NSArray 中获取仅包含
  • 具有可变 Excel 连接管理器的 SSIS

    我正在尝试使用 SSIS 中的 WMI 事件观察器任务自动执行包 我想要的功能是当 Excel 文件放入某个文件夹时自动执行包 但是 这些 excel 文件将是用于填充数据库的连接管理器 目前 SSIS 不允许我这样做 因为我的 Excel
  • Primefaces selectCheckboxMenu 过滤器在 selectOneMenu 位于数据表内部时不起作用

    我有一个 Primefaces 5 0 数据表 我使用两列过滤器 selectOneMenu Filter1 和 selectCheckboxMenu Filter2 两个过滤器的数据都填充得很好 selectOneMenu Filter1
  • 根据属性值有条件地包含组件

    我有一个 ListView 它显示来自 API 的一些数据 在我的列表项中 我需要有两个不同的组件树 具体取决于该行的数据 更具体地说 如果该行有关联的图像 我需要显示带有标签的图像 并以某种方式排列 如果它没有图像 那么我只想显示一个标签
  • UI图像元数据

    在我的应用程序中 我从资源库中检索 UIImage 该图像具有元数据 然后 应用程序会调整图像大小并旋转图像 从而创建新图像 新图像没有预期的原始元数据 但是如何在上传之前将元数据添加回图像 提前致谢 我自己修复了它 这是我使用的方法 以防
  • Android RecyclerView 滚动性能

    我创建了 RecyclerView 示例创建列表和卡片指导 我的适配器有一个仅用于膨胀布局的模式实现 问题是滚动性能较差 这是在只有 8 个项目的 RecycleView 中 在一些测试中我验证了在Android L中不会出现这个问题 但在
  • 如何在 Python 中将长整型写为二进制?

    在 Python 中 长整数具有无限的精度 我想将 16 字节 128 位 整数写入文件 struct标准库仅支持最多 8 字节整数 array具有相同的限制 有没有办法在不屏蔽和移动每个整数的情况下做到这一点 这里需要澄清一下 我正在写入