python 内置类型简述(1) —— 数值类型(int、float、complex)

python 内置类型简述(1) —— 数值类型(int、float、complex)
最新回答
晨曦慕雪

2023-10-23 15:04:26

Python 内置类型简述(1) —— 数值类型(int、float、complex)

Python 中的数值类型包括整数(int)、浮点数(float)和复数(complex),这些类型提供了丰富的功能和操作,以满足不同的数值计算需求。

一、整数(int)

整数类型用于表示没有小数部分的数字。在 Python 中,整数可以是任意大小的,并且支持大整数运算。

  • 基本用法

    整数可以直接使用十进制、二进制(以 0b 或 0B 开头)、八进制(以 0o 或 0O 开头)和十六进制(以 0x 或 0X 开头)表示。

    整数可以包含下划线进行分隔,以提高可读性,例如 1_000_000 表示一百万。

  • 常用操作

    int() 函数可以将其他数据类型转换为整数,例如 int(3.14) 将返回 3。

    整数支持基本的算术运算,如加法 +、减法 -、乘法 *、除法 //(整除)、取余 %、幂运算 等。

    sum(iterable) 函数可以计算可迭代对象中整数的总和。

    divmod(a, b) 函数返回 (a // b, a % b),即整除的商和余数。

    abs(a) 函数返回整数的绝对值。

    round(a) 函数返回四舍五入后的整数(对于整数输入,直接返回输入值)。

    a.to_bytes(length, byteorder, signed=False) 方法将整数转换为指定长度的字节对象。

  • 进制转换

    bin(a) 函数返回整数的二进制表示。

    oct(a) 函数返回整数的八进制表示。

    hex(a) 函数返回整数的十六进制表示。

    int(x, base) 函数将指定进制的字符串 x 转换为十进制整数。

二、浮点数(float)

浮点数类型用于表示有小数部分的数字。Python 中的浮点数遵循 IEEE 754 标准。

  • 基本用法

    浮点数可以直接使用十进制表示,例如 3.14。

    浮点数也可以使用科学计数法表示,例如 1e10 表示 1010。

  • 常用操作

    float() 函数可以将其他数据类型转换为浮点数,例如 float(3) 将返回 3.0。

    浮点数支持基本的算术运算,与整数类似,但结果通常为浮点数。

    round(a, ndigits) 函数返回四舍五入到 ndigits 位小数的浮点数。

    abs(a) 函数返回浮点数的绝对值。

    浮点数没有 to_bytes 方法,因为浮点数的表示涉及精度和舍入问题,不适合直接转换为字节。

  • 小数进制转换

    float.hex() 方法返回浮点数的十六进制表示。

    float.fromhex(s) 函数将十六进制表示的字符串 s 转换为浮点数。

三、复数(complex)

复数类型用于表示包含实部和虚部的数字,形式为 a + bj,其中 a 是实部,b 是虚部,j 是虚数单位(在 Python 中,虚数单位也可以用 1j 或 J 表示)。

  • 基本用法

    复数可以直接使用 a + bj 的形式表示,例如 1 + 2j。

    也可以使用 complex(real, imag) 函数创建复数,其中 real 是实部,imag 是虚部。如果仅提供一个参数,则虚部默认为 0。

  • 常用操作

    复数支持基本的算术运算,包括加法、减法、乘法和除法。

    复数的共轭可以通过 a.conjugate() 方法获得,其中 a 是复数。

    abs(a) 函数返回复数的模(即 sqrt(real^2 + imag^2))。

    real 和 imag 属性分别返回复数的实部和虚部。

  • 注意事项

    复数类型没有 to_bytes 方法和进制转换方法,因为复数的表示涉及两个维度(实部和虚部),不适合直接转换为字节或进行进制转换。

    复数类型没有最大最小值,因此 max() 和 min() 函数不适用于复数。

总结

Python 的数值类型(int、float、complex)提供了丰富的功能和操作,可以满足不同的数值计算需求。整数类型支持大整数运算和进制转换,浮点数类型适用于需要小数表示和精度计算的场景,复数类型则用于表示和处理包含实部和虚部的数字。熟练掌握这些类型的用法和特性,对于编写高效、准确的 Python 代码至关重要。