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 代码至关重要。