我需要一个按继承组织的 Python 数值数据类型的层次结构。我一直在互联网上寻找一个,但没有像我需要的那样出现。
有这样的等级制度吗?
Python 中的数值数据是:
浮点数据类型涵盖整型数据类型,复杂数据类型涵盖浮点和整型数据类型。
所以值 1 和 1.0 相等但不相同。
>>> 1 == 1.0
True
>>> 1 is 1.0
False
复杂类型也会发生同样的事情:
>>> 1.2 == 1.2+0j
True
>>> 1.2 is 1.2+0j
False
如果两种不同的数值数据类型一起处理,结果将是覆盖范围更大的数据类型。
例如+操作:
int + int = int
int + float = float
int + complex = complex
float + float = float
float + complex = complex
complex + complex = complex
除法是例外。
int / int = float
出于明显的原因,例如:
>>> 1 / 2
0.5