Python int 的位函数 (bit_length,to_bytes 和 from_bytes)17 Mar 2025 | 4 分钟阅读 什么是位操作函数?应用于每个单独的位而不是整个数字的函数称为位操作函数。 我们可以用二进制位 (0 和 1) 来表示每个数字。 如果我们以二进制格式表示任何数字,我们就可以对其应用位操作函数,但有些位操作函数可以应用于整数数据类型。 整数或 int 数据类型在 Python 中实现了 numbers 类的 Integral 子类。 主要的位操作函数是:
1. bit_length()bit_length 函数返回表示数字的二进制格式所需的位数。 虽然我们可以通过添加前导零来用任意数量的位来表示任何数字,但它会返回排除前导零后的数字。 它还会忽略用于符号表示的位。 示例 1 输出 ![]() 说明 在上面的代码中,我们使用了三个整数变量。 对于每个变量,我们都应用了 bit_length() 位函数,该函数将返回表示该特定数字所需的位数。 第一个数字是五,可以表示为 32 位中的 0000000 00000000 00000000 00000101。 但此函数会删除前导零,因此它将数字表示为 101,这意味着我们只需要 3 位来表示 5。 第二个数字是 16,可以表示为 0000000 00000000 00000000 00010000 在 32 位中,我们可以将其表示为 10000,只需要 5 位。 同样,我们可以用 1000000 表示 32,只需要 6 位。 示例 2 bit_length() 函数用于负数 输出 ![]() 说明 在上面的代码中,我们取了两个整数,一个是正数,第二个是负数。 第一个数字是五,可以表示为 101,因此函数将返回 3。 第二个数字是 -5,在 32 位中可以用 2 的补码形式表示为 11111111 11111111 11111111 11111011。 这里,前 33 位表示数字的符号或称为符号位,接下来的 3 位表示数字。 因此,此函数会删除符号位,并将返回 011 的三作为答案。 2. to_bytes()此函数返回表示给定整数的字节数组。 语法 length: 它表示此函数返回的字节长度。 byteorder: 这定义了我们想要的表示类型。 如果设置为 'big',则最高有效字节位于数组的开头;如果设置为 'little',则最高有效字节位于数组的末尾。 signed: 这是一个布尔参数,如果设置为 true,则表示数字使用 2 的补码形式。 示例 3 输出 ![]() 说明 在上面的代码中,我们使用了整数 69,并对其应用了 to_bytes() 函数。 我们为此使用了大端序表示,并且字节数组的大小为 10。 示例 4 输出 ![]() 说明 在上面的代码中,我们取了数字 18,并在小端序机器上用大小为 4 的字节数组表示它。 3. from_bytes()此函数是 to_bytes() 函数的逆向操作,它以字节数组作为输入并返回等效的整数。 语法 示例 5 输出 ![]() 说明 在上面的代码中,我们使用了 from_bytes() 函数,并将其参数设置为字节数组和字节序为大端序。 因此,它返回 17 作为答案,因为在十六进制中,X11 表示 17。 示例 6 对于负数,我们需要将 signed 参数设置为 true。 输出 ![]() 说明 在上面的代码中,我们将 signed 参数设置为 true,以便将字节数组视为有符号数,它返回负数 -3841。 |
引言 在我们开始学习分类变量编码之前,让我们首先了解数据类型及其尺度的基础知识。对于学习者来说,理解这些主题对于继续处理分类变量编码至关重要。众所周知,......
阅读9分钟
在 Python 中查找大元素 在这个问题中,我们将得到一个整数数组,我们必须为数组中每个元素的每个元素找到大元素。大元素是其右侧的第一个元素...
阅读 10 分钟
什么是 Selenium 模块?Selenium 是 Python 提供的一个用于自动化测试的模块。它提供了一个易于使用的 API,借助 Selenium 驱动程序可以进行不同的功能测试。Selenium 是一个开源的 Python 框架,它提供了用于使用 Selenium 编写功能测试的 API……
阅读 2 分钟
什么是直方图?直方图是连续分组划分的频率分布表的视觉表示。一系列矩形,其基底等于类边界之间的距离,面积与相关类中的频率成比例,构成了...
阅读 4 分钟
在本教程中,我们将学习如何使用 Tkinter 和 Python 构建一个简单的记事本。记事本 GUI 包含文件和编辑等不同选项。所有功能,如保存文件、打开文档、编辑、复制和粘贴,都是可能的。Python,...
阅读 4 分钟
作物推荐系统是一种帮助农民就应种植的作物做出明智决策的工具。该系统考虑气候、土壤类型、灌溉和市场需求等多种因素,为农民提供个性化建议。本文将讨论如何构建...
5 分钟阅读
情感分析是一个“计算确定”某篇文章是积极、中性还是消极的过程。它也称为意见挖掘。此过程确定段落中的句子是消极、积极还是中性。商业:营销公司使用它来制定策略、了解客户的...
阅读 3 分钟
在本教程中,我们将学习标准日志模块的基础知识。什么是日志记录?日志记录是标准库中的一个 Python 模块,它提供了使用框架从 Python 程序发布日志消息的功能。日志记录用于跟踪事件...
阅读9分钟
什么是错误?在编程语言中,如果以无效的方式执行某些代码,程序的执行将停止并显示一条消息,此消息称为错误或异常。编程语言中存在某些类型的错误...
阅读 3 分钟
如何使用 Python 写入文本文件?读写文件以用于存储或以后使用是编程中的常见任务。Python 有多种处理文件的方法,但我们将特别关注写入文本文件。文本文件是...
阅读 6 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India