当前位置: 首页 > 面试题库 >

Python中的类型转换

栾烨华
2023-03-14
问题内容

我需要将Python中的字符串转换为其他类型,例如无符号和有符号的8、16、32和64位整数,双精度数,浮点数和字符串。

我怎样才能做到这一点?


问题答案:

您可以使用以下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浮点数是其他语言所称的double,即它们是64位。Python中没有32位浮点数。



 类似资料:
  • 虽然 Python 是弱类型编程语言,不需要像 Java 或 C 语言那样还要在使用变量前声明变量的类型,但在一些特定场景中,仍然需要用到类型转换。 比如说,我们想通过使用 print() 函数输出信息“您的身高:”以及浮点类型 height 的值,如果在交互式解释器中执行如下代码: >>> height = 70.0 >>> print("您的身高"+height) Traceback (mos

  • 本文向大家介绍python中的decimal类型转换实例详解,包括了python中的decimal类型转换实例详解的使用技巧和注意事项,需要的朋友参考一下 [Python标准库]decimal——定点数和浮点数的数学运算         作用:使用定点数和浮点数的小数运算。         Python 版本:2.4 及以后版本         decimal 模块实现了定点和浮点算术运算符,使用

  • 当我运行我的代码时,它返回了错误:类型“Future”不是类型转换中“List”类型的子类型。我该如何修复它?它是在我从Firebase获取数据之前匹配引擎运行的?我试图将wait添加到List demoProfiles=getdata()作为wait List;但它返回错误。我真的是新手,这个问题已经困扰了我一整天。请帮帮我

  • 我有错误从标题时试图这样做 > 我创建了@JsonSerialiazable()类来处理json 然后,在调用http时。get(),我执行以下操作: map变量如下所示: 当调用$MyResponseFromJson(json)时,当它试图从我的响应中执行(json['a']as List)时,它会给出一个错误。g、 构建运行程序生成的dart文件。 我如何修复错误? 谢啦

  • 问题内容: 我有从熊猫生成的以下形式的字典列表。我想将其转换为json格式。 但是,json.dumps会引发错误:TypeError:685不可序列化JSON 我猜这是从numpy到python(?)的类型转换问题。 但是,当我使用np.int32(v)转换数组中每个字典的值v时,仍会引发错误。 编辑:这是完整的代码 问题答案: 看来您是正确的: 这里的可惜的是,numpy的数字不给你什么任何暗

  • 我对flatter是个新手,我想呈现一个ListView。但是我犯了一个错误。 我有3个模型课: 主题、主题和内容。 这是模型文件: 这是文件: 问题出现在。 错误消息是: