如何在Python中将有符号整数转换为无符号整数

2023-11-23

假设我有这个号码i = -6884376。 我如何将其称为无符号变量? 就像是(unsigned long)i in C.


Assuming:

  1. 你心里有 2 的补码表示;和,
  2. By (unsigned long) you mean无符号 32 位整数,

那么你只需要添加2**32 (or 1 << 32)为负值。

例如,将此应用于 -1:

>>> -1
-1
>>> _ + 2**32
4294967295L
>>> bin(_)
'0b11111111111111111111111111111111'

假设 #1 意味着您希望 -1 被视为由 1 位组成的固定字符串,而假设 #2 意味着您需要 32 位。

不过,除了你之外没有人可以说出你隐藏的假设是什么。例如,如果您考虑的是 1 的补码表示,那么您需要应用~改为前缀运算符。 Python 整数努力给人一种使用无限宽的 2 的补码表示形式的错觉(类似于常规的 2 的补码,但具有无限数量的“符号位”)。

要复制平台 C 编译器的功能,您可以使用ctypes module:

>>> import ctypes
>>> ctypes.c_ulong(-1)  # stuff Python's -1 into a C unsigned long
c_ulong(4294967295L)
>>> _.value
4294967295L

C's unsigned long恰好是运行此示例的机器上的 4 个字节。

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

如何在Python中将有符号整数转换为无符号整数 的相关文章

  • Lighttpd 和 cgi python

    我正在尝试通过 lighttpd 执行一些 python 脚本 但是当我尝试运行它时 我只得到一个要求我下载的空白文件 lighttpd conf server modules mod access mod alias mod access
  • 保存为 HDF5 的图像未着色

    我目前正在开发一个将文本文件和 jpg 图像转换为 HDF5 格式的程序 用HDFView 3 0打开 似乎图像仅以灰度保存 hdf h5py File Sample h5 img Image open Image jpg data np
  • 使用特定的类/函数预加载 Jupyter Notebook

    我想预加载一个笔记本 其中包含我在另一个文件中定义的特定类 函数 更具体地说 我想用 python 来做到这一点 比如加载一个配置文件 包含所有相关的类 函数 目前 我正在使用 python 生成笔记本并在服务器上自动启动它们 因为不同的
  • 在 django ORM 中查询时如何将 char 转换为整数?

    最近开始使用 Django ORM 我想执行这个查询 select student id from students where student id like 97318 order by CAST student id as UNSIG
  • Pandas/Google BigQuery:架构不匹配导致上传失败

    我的谷歌表中的架构如下所示 price datetime DATETIME symbol STRING bid open FLOAT bid high FLOAT bid low FLOAT bid close FLOAT ask open
  • Python getstatusoutput 替换不返回完整输出

    我发现了这个很棒的替代品getstatusoutput Python 2 中的函数在 Unix 和 Windows 上同样有效 不过我觉得这个方法有问题output被构建 它只返回输出的最后一行 但我不明白为什么 任何帮助都是极好的 def
  • 删除flask中的一对一关系

    我目前正在使用 Flask 开发一个应用程序 并且在删除一对一关系中的项目时遇到了一个大问题 我的模型中有以下结构 class User db Model tablename user user id db Column db String
  • 使用 kivy textinput 的 'input_type' 属性的问题

    您好 我在使用 kivy 的文本输入小部件的 input type 属性时遇到问题 问题是我制作了两个自定义文本输入 其中一个称为 StrText 其中设置了 input type text 然后是第二个文本输入 名为 NumText 其
  • Python zmq SUB 套接字未接收 MQL5 Zmq PUB 套接字

    我正在尝试在 MQL5 中设置一个 PUB 套接字 并在 Python 中设置一个 SUB 套接字来接收消息 我在 MQL5 中有这个 include
  • 使用Python请求登录Google帐户

    在多个登录页面上 需要谷歌登录才能继续 我想用requestspython 中的库以便让我自己登录 通常这很容易使用requests库 但是我无法让它工作 我不确定这是否是由于 Google 做出的一些限制 也许我需要使用他们的 API 或
  • 立体太阳图 matplotlib 极坐标图 python

    我正在尝试创建一个与以下类似的简单的立体太阳路径图 http wiki naturalfrequent com wiki Sun Path Diagram http wiki naturalfrequency com wiki Sun Pa
  • 如何使用 Pandas、Numpy 加速 Python 中的嵌套 for 循环逻辑?

    我想检查一下表的字段是否TestProject包含了Client端传入的参数 嵌套for循环很丑陋 有什么高效简单的方法来实现吗 非常感谢您的任何建议 def test parameter a list parameter b list g
  • Docker 中的 Python 日志记录

    我正在 Ubuntu Web 服务器上的 Docker 容器中测试运行 python 脚本 我正在尝试查找由 Python Logger 模块生成的日志文件 下面是我的Python脚本 import time import logging
  • Numpy - 根据表示一维的坐标向量的条件替换数组中的值

    我有一个data多维数组 最后一个是距离 另一方面 我有距离向量r 例如 Data np ones 20 30 100 r np linspace 10 50 100 最后 我还有一个临界距离值列表 称为r0 使得 r0 shape Dat
  • javascript 是否有等效的 __repr__ ?

    我最接近Python的东西repr这是 function User name password this name name this password password User prototype toString function r
  • 使用特定颜色和抖动在箱形图上绘制数据点

    我有一个plotly graph objects Box图 我显示了箱形 图中的所有点 我需要根据数据的属性为标记着色 如下所示 我还想抖动这些点 下面未显示 Using Box我可以绘制点并抖动它们 但我不认为我可以给它们着色 fig a
  • Python:XML 内所有标签名称中的字符串替换(将连字符替换为下划线)

    我有一个格式不太好的 XML 标签名称内有连字符 我想用下划线替换它 以便能够与 lxml objectify 一起使用 我想替换所有标签名称 包括嵌套的子标签 示例 XML
  • 如何在 pygtk 中创建新信号

    我创建了一个 python 对象 但我想在它上面发送信号 我让它继承自 gobject GObject 但似乎没有任何方法可以在我的对象上创建新信号 您还可以在类定义中定义信号 class MyGObjectClass gobject GO
  • 如何解决 PDFBox 没有 unicode 映射错误?

    我有一个现有的 PDF 文件 我想使用 python 脚本将其转换为 Excel 文件 目前正在使用PDFBox 但是存在多个类似以下错误 org apache pdfbox pdmodel font PDType0Font toUnico
  • Scipy Sparse:SciPy/NumPy 更新后出现奇异矩阵警告

    我的问题是由大型电阻器系统的节点分析产生的 我基本上是在设置一个大的稀疏矩阵A 我的解向量b 我正在尝试求解线性方程A x b 为了做到这一点 我正在使用scipy sparse linalg spsolve method 直到最近 一切都

随机推荐

  • 如何让我的寻呼机查看更加流畅?

    我正在使用视图寻呼机来显示两个片段 一个片段包含相机预览 另一个片段仅包含简单的列表视图 问题是 整个滑动体验并不像应有的那么流畅 我猜其原因是 UI 线程必须同时处理视图寻呼机 相机和列表视图 现在 我能做什么呢 我可以在后台线程中运行什
  • 为什么 git 会忽略 .gitignore 文件中没有的文件?

    我有一个 git 存储库 它忽略图像文件以及其他一些文件 但是我的 gitignore文件只忽略了一个config php文件 是否有一些我似乎找不到的全局忽略文件 我现在必须指定文件来添加它们 它给了我这个警告 您的 gitignore
  • vsCode java.test.config vmArgs 不工作

    我的项目需要以下 vmArgs 才能运行 vmArgs javaagent lib aspectjweaver 1 9 5 jar javaagent lib spring instrument 5 2 3 RELEASE jar modu
  • file_get_contents():SSL 操作失败,代码为 1,无法启用加密

    我一直在尝试从我在服务器上创建的 PHP 页面访问这个特定的 REST 服务 我将问题缩小到这两行 所以我的 PHP 页面如下所示 该页面在第 2 行终止 并出现以下错误 Warning file get co
  • 如何有效转置二维位矩阵

    我一直在这个问题上绊倒 例如在这个问题 给定一个原始整数类型数组形式的 2D 位矩阵 板 数组 例如一个数组long 为了简单起见 我们可以假设一个方阵 例如 64 的数组long64 位平台上的值long Let x i for 0 lt
  • 为什么 Qt 中的字体显得模糊或像素化?

    我所有的字体都出现像素化 所以我使用AntiAliasing但这没有帮助 正如您在图像本身中看到的像素化字体 这是我当前使用的代码 butt1 QtWidgets QLabel Scrappr font QtGui QFont font s
  • 可以在 contenteditable div 中使用浏览器的撤消功能来撤消“range.insertNode”吗?

    我正在研究一个contenteditablediv 制作一个简单的富文本编辑器 我的要求之一是能够在按钮事件的光标位置插入 html 块 我能够通过使用使该部分正常工作range selection range insertNode nod
  • 反转表行

    我想反转表格正文行使用 jQuery 我拥有的 table width 630 border 0 cellspacing 0 cellpadding 0 thead tr td TITLE A td td TITLE B td 继续 jsf
  • 我可以处理 HTML

    我在 SO 和其他地方看到了很多关于右键单击事件以及如何使用 JavaScript 捕获和处理它们的问题和答案 通常使用 button的属性event浏览器生成的对象 然而 我还没有找到的一件事 可能是因为这是一个非常奇怪的请求 是如何捕获
  • “??”是什么意思?意思是?

    我正在查看 ASP NET MVC 1 0 生成的代码 并且想知道 双问号是什么意思 This constructor is not used by the MVC framework but is instead provided for
  • 在 C# 中使用 XML 文件存储数据

    我基本上是在寻找有人在这方面为我指明正确的方向 我阅读了一些 Microsoft 文档 但这并没有多大帮助 这是我第一次尝试使用 XML 我正在编写一个应用程序 需要存储已知用户的列表以及每个用户创建的别名列表 我已经弄清楚如何在应用程序关
  • Python Django ValueError:源代码字符串不能包含空字节

    我已经放下了一个我已经工作了几个月的 Django 项目 当我尝试重新运行服务器时 我收到了这个错误 ValueError source code string cannot contain null bytes 回溯是 C Users B
  • 在ios7中重新加载tableView标题

    如何在不重新加载所有表的情况下做到这一点 UIView tableView UITableView tableView viewForHeaderInSection NSInteger section UIView header if se
  • 无点风格并使用 $

    如何结合使用 和无点风格 一个明显的例子是下面的实用函数 times Int gt a gt a times n xs concat replicate n xs 只是写concat replicate产生错误 同样你不能写concat r
  • 在 Github 上获取 Travis Shield 以反映所选分支状态

    现在 无论我在 github 项目页面中选择哪个分支 我都可以让 travisshield 反映最新运行或特定分支 我可以通过在 URL 末尾省略或指定分支名称来完成此操作 相反 我想获得与所选分支相对应的盾牌 换句话说 每次我选择不同的分
  • 使用 javascript 取消注释 html 代码

    带有一些注释标签的 Html 表 我只是想取消注释这些标签 我尝试过使用 javascript 的正则表达式 但问题是它删除了整个注释行 因为我只是想取消注释这些标签 下面是带有注释标签的示例 html 表 table tr td ABCD
  • Angular2在第一次点击后删除点击事件绑定

    在我的应用程序中 我有一个甚至可以单击的按钮
  • 流星反应中的时刻?

    一直在使用https github com acreeger meteor moment在流星中 它工作得很好 但是有没有一种方法可以使时刻反应输出 以便它计数 3秒前 4秒前 等 我不会为每个单独的计时器使用新的会话变量 而是创建一个Tr
  • 如何识别并设置 Maven 中缺少的环境属性?

    我进行了构建设置 以便通过命令行传递变量 mvn clean install DsomeVariable data 在我的 pom 中我有
  • 如何在Python中将有符号整数转换为无符号整数

    假设我有这个号码i 6884376 我如何将其称为无符号变量 就像是 unsigned long i in C Assuming 你心里有 2 的补码表示 和 By unsigned long you mean无符号 32 位整数 那么你只