跳到主要内容

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(最大公约数)