【Python Number(数字)】
Python 中的数字类型是编程的基础元素,用于表示数值数据并进行数学运算。以下是 Python 数字类型的核心知识点:
一、基础数字类型
-
整数(
int
)- 表示整数值,例如
42
,-7
,0
- 支持任意精度(无大小限制):
a = 10 ** 100 # 10的100次方
- 表示整数值,例如
-
浮点数(
float
)- 表示小数,例如
3.14
,-0.5
,2e3
(科学计数法) - 注意精度问题:
0.1 + 0.2 # 结果为 0.30000000000000004(浮点数精度误差)
- 表示小数,例如
-
复数(
complex
)- 表示复数,例如
3+4j
(j
表示虚部) - 支持复数运算:
(2+3j) * (1-2j) # 结果为 (8-1j)
- 表示复数,例如
二、数字运算
1. 基本运算
5 + 3 # 加法 → 8
7 - 2 # 减法 → 5
4 * 6 # 乘法 → 24
10 / 3 # 除法 → 3.333...
10 // 3 # 整除 → 3
9 % 2 # 取余 → 1
2 ** 5 # 幂运算 → 32
2. 增强赋值
x = 10
x += 5 # 等价于 x = x + 5 → 15
x *= 2 # 等价于 x = x * 2 → 30
3. 比较运算
5 > 3 # True
3.14 == 3.14 # True
-2 <= 1 # True
三、常用数学函数
通过 math
模块实现高级运算:
import mathmath.sqrt(16) # 平方根 → 4.0
math.ceil(3.2) # 向上取整 → 4
math.floor(3.8) # 向下取整 → 3
math.pi # 圆周率 → 3.141592653589793
math.sin(math.pi/2) # 正弦函数 → 1.0
四、数字转换
-
类型转换:
int(3.14) # → 3(截断小数部分) float(5) # → 5.0 complex(2) # → 2+0j str(123) # → "123"(转为字符串)
-
进制转换:
bin(10) # 二进制 → '0b1010' hex(255) # 十六进制 → '0xff' oct(8) # 八进制 → '0o10'
五、随机数生成
通过 random
模块实现:
import randomrandom.random() # 生成 [0.0, 1.0) 随机浮点数
random.randint(1, 10) # 生成 [1, 10] 随机整数
random.choice([3,6,9])# 随机选择元素 → 可能返回6
六、数字格式化
# 格式化为字符串
f"π≈{math.pi:.2f}" # → "π≈3.14"# 千位分隔符
format(1234567, ",") # → '1,234,567'
七、特殊数字值
float('inf')
: 正无穷大(比任何数都大)float('-inf')
: 负无穷大float('nan')
: 非数字(Not a Number)
八、应用场景示例
-
金融计算:
principal = 1000 rate = 0.05 years = 10 future_value = principal * (1 + rate) ** years # 复利计算
-
图像处理:
# 将像素值(0-255)归一化到 [0,1] normalized = pixel_value / 255.0
-
游戏开发:
# 计算抛射体轨迹 import math angle = math.radians(45) velocity = 50 max_height = (velocity ** 2) * (math.sin(angle) ** 2) / (2 * 9.8)
通过掌握这些数字类型和运算方法,可以高效处理从简单算术到复杂科学计算的各类数值问题。实际开发中需注意浮点数精度问题和类型转换陷阱。