Number 常用方法
类型基础介绍见 Python 数据类型。
运算符(int 和 float 通用)
| 操作符 | 说明 | 示例 |
|---|---|---|
+, -, *, / | 加减乘除 | 3 + 2 → 5 |
//, % | 取整除法、取模 | 7 // 2 → 3, 7 % 2 → 1 |
** | 幂运算 | 2 ** 3 → 8 |
==, !=, >, <, >=, <= | 比较运算 | 3 > 2 → True |
类型转换(
int/float/bool)见 类型转换,abs、round、pow、divmod等数学运算内置函数见 数学运算。
int 的独有方法
进制转换
| 方法 | 说明 | 示例 |
|---|---|---|
bin(x) | 转二进制字符串 | bin(10) → '0b1010' |
oct(x) | 转八进制字符串 | oct(10) → '0o12' |
hex(x) | 转十六进制字符串 | hex(255) → '0xff' |
int(s, base) | 从字符串按进制解析 | int('1010', 2) → 10 |
x.bit_length() | 二进制位数 | (10).bit_length() → 4 |
位运算
| 操作符 | 说明 | 示例 |
|---|---|---|
&, |, ^ | 按位与、或、异或 | 5 & 3 → 1, 5 | 3 → 7, 5 ^ 3 → 6 |
<<, >> | 左移、右移 | 4 << 1 → 8 |
float 的注意事项
- 精度问题:浮点数运算可能有误差(如
0.1 + 0.2 != 0.3,实际结果是0.30000000000000004),需用decimal模块处理精确计算。 - 特殊值:
float('inf') # 正无穷
float('-inf') # 负无穷
float('nan') # 非数字
decimal.Decimal 的方法
用于高精度十进制运算(需导入 decimal 模块):
| 方法 | 说明 | 示例 |
|---|---|---|
Decimal(str) | 精确初始化 | Decimal('0.1') + Decimal('0.2') → Decimal('0.3') |
quantize() | 控制舍入规则 | Decimal('3.14159').quantize(Decimal('0.00')) → Decimal('3.14') |
示例代码
# 整数操作
num = 10
print(bin(num)) # '0b1010'
print(num.bit_length()) # 4(二进制位数)
# 浮点数精度控制
from decimal import Decimal, getcontext
getcontext().prec = 6 # 设置精度
result = Decimal('1') / Decimal('7')
print(result) # 0.142857
# 数学函数
import math
print(math.gcd(12, 15)) # 3(最大公约数)