在Python 3中,
float
类型至少有三个属性:real
、imag
和一个方法conjugate()
。由于issubclass(float, complex)
的结果为False
,那么这些属性和方法存在的原因是什么?float
类型至少有三个属性:real
、imag
和一个方法conjugate()
。由于issubclass(float, complex)
的结果为False
,那么这些属性和方法存在的原因是什么?bool
、int
、float
、complex
)紧密相关,源代码清晰地表明了这一点(例如对于 float
)。numbers
模块。
正如您所看到的,.real
、.imag
和 .conjugate()
都是通用的 Number
抽象的一部分。complex
,并且它将优雅地适用于任何 Number
子类型。
int
、denominator
和numerator
也是如此。 - tobias_k