python - python的位操作中使用了多少位?
问题描述
Java 中的int
数据类型有 32 位,因此当我们在 Java 中进行位操作时,它将以 32 位发生。但是对于整数数据类型在 Python 中是没有限制的,那么在 python 中位操作发生了多少位呢?
例如 java 中的 2 和 3 将以 32 位发生,即
0000 0000 0000 0000 0000 0000 0000 0010
&
0000 0000 0000 0000 0000 0000 0000 0011
但是对于python中的多少位也会发生同样的情况
IE。会是
10
&11
或
0010
&0011
或者是什么
解决方案
如果我错了请纠正我
在 Python 3.1 之前,没有简单的方法来确定 Python 如何在内部表示特定整数,即使用了多少位。Python 3.1 向 int 类型添加了一个 bit_length() 方法,正是这样做的。
资源 https://wiki.python.org/moin/BitManipulation
x=7
y=30
print( (x|y).bit_length() )
输出:5
推荐阅读
- ruby-on-rails - 如何在三星 Dex 内的 termux 上运行 rails 服务器?
- redux - TypeError :state.foo 未定义
- swift - SwiftUI Navigation 类似于 Slack
- linux - jackd 无法在 docker 容器中使用实时调度
- java - 使用可比较的类保留 2D Arraylist 的原始索引
- mysql - 如何在没有原始选择的情况下在 Laravel 中绑定 sql 查询参数?
- spring-boot - RedisCache 类中的 NullPointerException(行号 614)。版本 1.8.22
- python - Receiving KeyError: ' ' for my text based rpg
- java - JSONArray 与 Array 或 Arraylist
- android - 'React native run android' 在模拟器中启动应用程序后停止