Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么';Python中强制转换和强制转换的区别是什么?_Python_Casting_Types_Coercion - Fatal编程技术网

什么';Python中强制转换和强制转换的区别是什么?

什么';Python中强制转换和强制转换的区别是什么?,python,casting,types,coercion,Python,Casting,Types,Coercion,在Python文档和邮件列表中,我看到值有时是“强制转换”的,有时是“强制转换”的;只有类型转换,但没有强制转换(在C意义上)。进行类型转换,例如通过int(o)将对象o转换为整数(实际上,整数对象是由o构成的)。强制发生在二进制操作的情况下:如果您执行x+y,并且x和y具有不同的类型,则在执行该操作之前将它们强制为单个类型。在2.x中,一个特殊的方法\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

在Python文档和邮件列表中,我看到值有时是“强制转换”的,有时是“强制转换”的;只有类型转换,但没有强制转换(在C意义上)。进行类型转换,例如通过
int(o)
将对象o转换为整数(实际上,整数对象是由o构成的)。强制发生在二进制操作的情况下:如果您执行
x+y
,并且x和y具有不同的类型,则在执行该操作之前将它们强制为单个类型。在2.x中,一个特殊的方法
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu。强迫是隐含的

Python中的示例如下:

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

演员阵容只在外国金融机构中出现。在C或Java中通常被称为casting的东西在python中被称为转换,尽管它经常被称为casting,因为它与其他语言相似。在我使用过的几乎每种语言(包括python)中,类型都是隐式更改的。

-1。这就是C++的命名法;Python使用不同的术语。+1:对于这个问题,这个例子非常有效。它明显地被标记为C++。问题是关于Python语言上下文中的“Casic”一词。解释
float(1)
的答案是构造,而不是强制转换更好。@CarlG这是一个奇怪的问题,在python强制转换的上下文中并没有真正提到。文档中提到它的唯一地方是在C接口中,它指的是C中的强制转换,而在ctypes中它指的是ctypes.cast函数。另一个答案是关于构造的错误,它显然被称为转换,而不是构造。文档中从未提及任何内置转换函数的构造。