python - Python中的强制转换和强制转换有什么区别?

标签 python casting types coercion

在 Python 文档和邮件列表中,我看到值有时是“强制转换的”,有时是“强制的”。

最佳答案

类型转换是明确的。强制是隐含的。

Python 中的示例如下:

cast(2, POINTER(c_float)) #cast
1.0 + 2  #coerce 
1.0 + float(2) #conversion

Cast 真的只出现在 C FFI 中。在 C 或 Java 中通常称为强制转换的东西在 python 中称为转换,尽管由于它与其他语言的相似性,它经常被称为强制转换。使用我所使用过的几乎所有语言(包括 python)Coercion是隐式类型改变。

关于python - Python中的强制转换和强制转换有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1602122/

相关文章:

Python mysql 连接器加载语句在错误的目录 Windows 中搜索

python - 如何将字符串转换回列表

c++ - 如何在 C 或 C++ 中构建大小为 n 的全新数据类型而不使用任何用户定义的数据类型?

javascript - typescript 运行时数组类型 .map 方法可用

java - Java 中的原始转换和赋值

java - 如何避免误用具有多个相同类型参数的构造函数?

python - 安西 bool 。覆盖单个字典键

python - 在 Keras 中 reshape 自定义损失函数中的张量

python - 如何从ftp读取图像文件并将其转换为opencv图像而不保存在python中

java - 如何获取值的类型(Java)