可以使用int函数将字符串转换为32位有符号整数:str = "1234"
i = int(str) // i is a 32-bit integer
如果字符串不代表整数,则会出现ValueError异常。但是,请注意,如果字符串确实表示一个整数,但该整数不适合32位有符号int,那么实际上您将得到一个类型为long的对象。
然后,您可以通过一些简单的数学运算将其转换为其他宽度和符号:s8 = (i + 2**7) % 2**8 - 2**7 // convert to signed 8-bit
u8 = i % 2**8 // convert to unsigned 8-bit
s16 = (i + 2**15) % 2**16 - 2**15 // convert to signed 16-bit
u16 = i % 2**16 // convert to unsigned 16-bit
s32 = (i + 2**31) % 2**32 - 2**31 // convert to signed 32-bit
u32 = i % 2**32 // convert to unsigned 32-bit
s64 = (i + 2**63) % 2**64 - 2**63 // convert to signed 64-bit
u64 = i % 2**64 // convert to unsigned 64-bit
可以使用float函数将字符串转换为浮点:f = float("3.14159")
Python float是其他语言所称的double,即它们是64位的。Python中没有32位浮点。