Skip to content

标准库与第三方库

常用标准库

datetime 和 time(日期与时间处理)

  • datetime 模块提供了日期和时间的操作。
  • time 模块提供了时间相关的功能,例如获取当前时间戳、格式化时间等。
python
from datetime import datetime, timedelta

# 获取当前日期和时间
now = datetime.now()
print(f"Current time: {now}")

# 日期加减
tomorrow = now + timedelta(days=1)
print(f"Tomorrow's date: {tomorrow}")

# 格式化日期
formatted_date = now.strftime('%Y-%m-%d %H:%M:%S')
print(f"Formatted date: {formatted_date}")
  • time 模块可以用于处理时间戳和延时操作:
python
import time

# 获取当前时间戳
current_time = time.time()
print(f"Current timestamp: {current_time}")

# 让程序休眠2秒
time.sleep(2)
print("Waited for 2 seconds.")

os 和 sys(系统相关)

  • os 模块允许与操作系统进行交互,处理文件路径、环境变量等。
  • sys 模块提供与 Python 解释器相关的功能,如命令行参数、退出代码等。
python
import os
import sys

# 获取当前工作目录
cwd = os.getcwd()
print(f"Current working directory: {cwd}")

# 列出目录中的文件
files = os.listdir('.')
print(f"Files in current directory: {files}")

# 获取命令行参数
args = sys.argv
print(f"Command line arguments: {args}")

re(正则表达式)

  • re 模块用于正则表达式的匹配和操作,适合处理复杂的字符串模式匹配和查找。
python
import re

# 查找所有匹配的字符串
text = "The rain in Spain"
matches = re.findall(r"\b[a-zA-Z]{4}\b", text)
print(f"Words with exactly 4 letters: {matches}")

# 替换字符串
result = re.sub(r"Spain", "France", text)
print(f"Replaced text: {result}")

collections(高级数据结构)

  • collections 模块提供了诸如 namedtupledequeCounterdefaultdict 等高级数据结构,可以简化数据处理。
python
from collections import Counter, defaultdict, namedtuple, deque

# 计数器 Counter
word_list = ['apple', 'banana', 'apple', 'orange', 'banana', 'banana']
word_count = Counter(word_list)
print(f"Word count: {word_count}")

# 默认字典 defaultdict
dd = defaultdict(int)
dd['apple'] += 1
print(f"Defaultdict: {dd}")

# 命名元组 namedtuple
Point = namedtuple('Point', ['x', 'y'])
p = Point(10, 20)
print(f"Point: {p.x}, {p.y}")

# 双端队列 deque
dq = deque([1, 2, 3])
dq.appendleft(0)
print(f"Deque: {dq}")

常用第三方库

numpy(数值计算)

  • numpy 是进行大规模矩阵运算和数值计算的核心库,提供了高效的多维数组对象(ndarray)和大量的数学函数。
python
import numpy as np

# 创建数组
arr = np.array([1, 2, 3, 4, 5])
print(f"Array: {arr}")

# 数学运算
arr_squared = arr ** 2
print(f"Squared array: {arr_squared}")

# 创建二维数组(矩阵)
matrix = np.array([[1, 2], [3, 4]])
print(f"Matrix:\n{matrix}")

# 数组的基本运算
sum_matrix = matrix + 10
print(f"Matrix + 10:\n{sum_matrix}")

pandas(数据分析)

  • pandas 提供了强大的数据结构 DataFrame,非常适合处理表格型数据,如 CSV 文件、Excel 文件等。
python
import pandas as pd

# 创建 DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]}
df = pd.DataFrame(data)
print(f"DataFrame:\n{df}")

# 从CSV文件读取数据
df_from_csv = pd.read_csv('data.csv')
print(f"CSV Data:\n{df_from_csv}")

# 数据筛选和分析
age_filtered = df[df['Age'] > 28]
print(f"Filtered Data:\n{age_filtered}")

matplotlib 和 seaborn(数据可视化)

  • matplotlib 是 Python 中最基础的绘图库,可以用于生成折线图、柱状图、散点图等。
  • seaborn 是基于 matplotlib 的高级绘图库,适合做美观的数据可视化。
python
import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np

# 使用 matplotlib 生成折线图
x = np.linspace(0, 10, 100)
y = np.sin(x)
plt.plot(x, y)
plt.title("Sine Wave")
plt.show()

# 使用 seaborn 生成热力图
data = np.random.rand(10, 12)
sns.heatmap(data)
plt.title("Heatmap Example")
plt.show()

requests(HTTP 请求)

  • requests 是 Python 中处理 HTTP 请求的优秀库,用于发送 GET、POST 等请求。
python
import requests

# 发送 GET 请求
response = requests.get('https://jsonplaceholder.typicode.com/posts/1')
print(f"Status Code: {response.status_code}")
print(f"Response JSON: {response.json()}")

# 发送 POST 请求
payload = {'title': 'foo', 'body': 'bar', 'userId': 1}
response = requests.post('https://jsonplaceholder.typicode.com/posts', json=payload)
print(f"POST Response: {response.json()}")
编程洪同学服务平台是一个广泛收集编程相关内容和资源,旨在满足编程爱好者和专业开发人员的需求的网站。无论您是初学者还是经验丰富的开发者,都可以在这里找到有用的信息和资料,我们将助您提升编程技能和知识。
专业开发
高端定制
售后无忧
站内资源均为本站制作或收集于互联网等平台,如有侵权,请第一时间联系本站,敬请谅解!本站资源仅限于学习与参考,严禁用于各种非法活动,否则后果自行负责,本站概不承担!