某些数学运算,尤其是从硬件驱动程序读取的数据,可能取决于数据类型的固定宽度。示例:按位移位。什么是创建具有固定宽度的整数变量(例如uint32,int16等)的Pythonic方法会相应地溢出/移位?
答案 0 :(得分:2)
我会建议fixedint库。该库中的类按以下约定命名:
[Mutable][U]Int<N>
所以对于你的两个例子,这些类将是
# C++ Python fixedint
std::uint32 UInt32
std::uint16 UInt16
这支持比特移位等事情
>>> a = fixedint.UInt32(14)
>>> a
UInt32(14)
>>> a << 2
UInt32(56)
答案 1 :(得分:2)