Python拥有丰富的标准库和第三方库,可以大大提高开发效率。以下介绍常用的标准库和第三方库的功能与用法。
10.1 标准库
Python标准库自带安装,无需额外安装。以下是一些常用的标准库:
10.1.1 math
模块
提供了数学运算的常用函数。
常见功能:
- 三角函数:
sin()
、cos()
、tan()
等。 - 对数函数:
log()
、log10()
。 - 幂次函数:
pow()
、sqrt()
。 - 常数:
pi
、e
。
示例:
import math
print(math.pi) # 圆周率:3.141592653589793
print(math.sqrt(16)) # 平方根:4.0
print(math.log(100, 10)) # 以10为底的对数:2.0
print(math.sin(math.pi / 2)) # 正弦值:1.0
10.1.2 random
模块
生成随机数和随机选择,适用于模拟和数据生成。
常见功能:
random()
:生成 0 到 1 之间的随机浮点数。randint(a, b)
:生成[a, b]
范围内的随机整数。choice(seq)
:从序列中随机选择一个元素。shuffle(seq)
:将序列随机打乱。
示例:
import random
print(random.random()) # 随机浮点数:0.123456789(示例)
print(random.randint(1, 10)) # 随机整数:5(示例)
print(random.choice(['a', 'b', 'c'])) # 随机选择:'b'(示例)
lst = [1, 2, 3, 4, 5]
random.shuffle(lst) # 随机打乱列表
print(lst) # 示例输出:[4, 1, 3, 2, 5]
10.1.3 datetime
模块
用于处理日期和时间。
常见功能:
- 获取当前日期和时间:
datetime.now()
。 - 创建日期对象:
datetime()
。 - 日期运算:
timedelta
。 - 格式化日期:
strftime()
。
示例:
from datetime import datetime, timedelta
# 当前日期和时间
now = datetime.now()
print(now) # 示例输出:2024-12-04 15:30:45.123456
# 日期加减
yesterday = now - timedelta(days=1)
print(yesterday) # 示例输出:2024-12-03
# 格式化日期
formatted = now.strftime('%Y-%m-%d %H:%M:%S')
print(formatted) # 示例输出:2024-12-04 15:30:45
10.2 第三方库
第三方库通常需要使用 pip
命令安装。例如:
pip install requests numpy pandas
10.2.1 requests
库
用于发送 HTTP 请求,广泛用于网页抓取和API交互。
常见功能:
get(url)
:发送GET请求。post(url, data)
:发送POST请求。- 获取响应内容:
response.text
、response.json()
。
示例:
import requests
response = requests.get('https://www.baidu.com')
if response.status_code == 200:
print(response.json()) # 输出响应的JSON内容
10.2.2 numpy
库
专为数值计算设计,提供高效的多维数组和相关运算。
常见功能:
- 创建数组:
array()
。 - 数组运算:加减乘除等。
- 常用函数:
mean()
、sum()
、linspace()
等。
示例:
import numpy as np
# 创建数组
arr = np.array([1, 2, 3, 4])
print(arr * 2) # 输出:[2 4 6 8]
# 多维数组
matrix = np.array([[1, 2], [3, 4]])
print(matrix.sum(axis=0)) # 按列求和:[4 6]
10.2.3 pandas
库
用于数据处理和分析,支持表格数据操作。
常见功能:
- 创建数据表:
DataFrame()
。 - 读取和保存数据:
read_csv()
、to_csv()
。 - 数据筛选:
loc[]
、iloc[]
。 - 数据统计:
mean()
、describe()
。
示例:
import pandas as pd
# 创建数据表
data = {
'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'Score': [85, 90, 95]
}
df = pd.DataFrame(data)
print(df)
# 筛选数据
filtered = df[df['Age'] > 28]
print(filtered)
# 读取和保存
df.to_csv('data.csv', index=False)
df2 = pd.read_csv('data.csv')
print(df2)
小结
- 标准库:
math
处理数学运算,random
生成随机数据,datetime
处理日期和时间。 - 第三方库:
requests
:用于HTTP请求。numpy
:用于高效数值计算。pandas
:用于数据分析和表格操作。
通过标准库和第三方库的结合,可以极大提升开发效率,满足从基础计算到复杂数据处理的多种需求。