在 Python 中,几乎所有数据都是对象。Python 解释器内置了多种常见数据类型。
其中,数值类型(Numeric)用来表示各种数值,支持数学运算。
Python 的数值类型主要包括:int(整数)、float(浮点数)以及 complex(复数)。
int
整数对象。支持任意精度,不会溢出(Python 3 的整数大小只受内存限制)。
1、表示方法
a = 1001 # 十进制整数
b = 0x1001 # 十六进制整数,等于 4097
c = 0o1001 # 八进制整数,等于 513
d = 0b1001 # 二进制整数,等于 9
#使用下划线 _ 作为分隔符,增强大数的可读性。
x = 1_000_000 # 等价于 1000000
y = 10_000_000_000 # 也可以多层分隔,等价于 10000000000
z = 0b1010_1100 # 等于 172。在二进制、八进制、十六进制中同样适用 2、常用操作与相关函数
print(int("7")) # 7 → 将字符串转换为整数
print(int("1001", 2)) # 9 → 按指定进制转换
print(abs(-3)) # 3 → 绝对值
print(5 // 2, 5 % 2) # 2 1 → 整除与取余
print(divmod(5, 2)) # (2, 1) → 商和余数同时返回
print(pow(2, 3)) # 8 → 幂运算
print(bin(10)) # '0b1010' → 转二进制字符串3、特别说明
(1)Python 中的 bool(布尔类型)是 int 的一个子类:True == 1,False == 0。
(2)常用的 int 方法还包括:
.bit_length():返回表示该整数所需的二进制位数。
.to_bytes():以字节形式表示整数。
(3)math 模块提供了更丰富的整数数学函数,例如:
import math
print(math.gcd(12, 18)) # 6 → 最大公约数
print(math.lcm(12, 18)) # 36 → 最小公倍数 (Python 3.9+)
print(math.factorial(5)) # 120 → 阶乘请参阅:
float
浮点数对象。用于表示实数,底层采用 IEEE 754 双精度浮点数(64 位),因此存在精度限制和舍入误差。
1、表示方法
a = 3.14 # 小数点表示
b = 1.0 # 显式小数
c = .5 # 小数点前可省略
d = 1e3 # 科学计数法,等于 1000.0
e = 2.5E-3 # 科学计数法,等于 0.0025
# 浮点数同样支持下划线 _ 分隔写法
pi = 3.141_592_653_589_793
g = 9.8_06
mass = 1.23e-4_5 # 科学计数法中亦可使用2、常用操作与相关函数
print(float("3.14")) # 3.14 → 将字符串转换为浮点数
print(abs(-2.5)) # 2.5 → 绝对值
print(round(3.14159, 2)) # 3.14 → 四舍五入(保留 2 位小数)
print(7 / 2) # 3.5 → 除法结果为浮点数
print(5.5 // 2) # 2.0 → 浮点数整除,结果仍为 float
print(7.5 % 2) # 1.5 → 取余
print(pow(2.0, 3)) # 8.0 → 幂运算
print(divmod(7.5, 2)) # (3.0, 1.5) → 同时返回商和余数(元组)3、特殊值
import math
print(float("inf")) # inf → 正无穷大
print(float("-inf")) # -inf → 负无穷大
print(float("nan")) # nan → 非数字 (Not a Number)
# 特殊值比较
print(math.isinf(float("inf"))) # True
print(math.isnan(float("nan"))) # True4、math 模块扩展
模块对浮点数支持也非常全面,常用函数有:
import math
print(math.sqrt(9)) # 3.0 → 平方根
print(math.log(8, 2)) # 3.0 → 对数(以 2 为底)
print(math.exp(1)) # 2.718 → e^1
print(math.sin(math.pi/2))# 1.0 → 正弦函数
print(math.ceil(3.2)) # 4 → 向上取整
print(math.floor(3.8)) # 3 → 向下取整5、特别说明
(1)float 在 Python 中不是任意精度,会有舍入误差。
print(0.1 + 0.2) # 0.30000000000000004(2)如果需要高精度小数运算,可使用.Decimal。
(3)如果需要分数运算,可使用 .Fraction。
complex
复数对象。用于表示数学中的复数,形式为 a + bj,其中 a 为实部,b 为虚部,j 表示虚数单位 (√-1)。
1、表示方法
z1 = 3 + 4j # 复数,实部 3,虚部 4
z2 = -2.5j # 纯虚数
z3 = complex(2, 5) # 使用 complex(real, imag) 构造,等价于 2 + 5j2、属性
z = 3 + 4j
print(z.real) # 3.0 → 实部
print(z.imag) # 4.0 → 虚部
print(z.conjugate()) # (3-4j) → 共轭复数3、常用操作与相关函数
z1 = 3 + 4j
z2 = 1 - 2j
print(z1 + z2) # (4+2j) → 加法
print(z1 * z2) # (11-2j) → 乘法
print(abs(z1)) # 5.0 → abs() 返回复数的模(√(3²+4²))4、cmath 模块扩展
模块专门用于复数运算,提供极坐标转换、指数、对数、三角函数等。
import cmath
z = 3 + 4j
print(cmath.phase(z)) # 0.927... → 相位角(弧度)
print(cmath.polar(z)) # (5.0, 0.927...) → (模, 相位角)
print(cmath.rect(5, cmath.pi/4)) # (3.5355+3.5355j) → 极坐标转复数5、特别说明
(1)运算符(+、-、*、/)对复数同样适用。
(2)与 float 一样,complex 也是基于 IEEE 754 浮点数,所以仍有精度限制。
小结
Python 的数值类型分为 int(整数)、float(浮点数)和 complex(复数)。
int:任意精度整数,常用于计数、索引等。
float:近似实数表示,遵循 IEEE 754 标准,有精度限制。
complex:内置复数支持,适合科学计算、信号处理等领域。
此外:
模块提供了大量数学函数(如 sqrt、log、sin、gcd 等),主要用于 int 和 float。
模块专门处理复数运算。
和 模块用于高精度与分数计算。
“点赞有美意,赞赏是鼓励”
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.