# Python常用的模块有哪些 Python作为一门功能强大且生态丰富的编程语言,其标准库和第三方模块覆盖了几乎所有开发领域。本文将系统介绍Python中常用的内置模块和第三方模块,并分类说明其核心功能与应用场景。 --- ## 一、标准库核心模块 ### 1. 系统与操作系统交互 #### `os`模块 ```python import os # 目录操作 os.mkdir('new_dir') # 创建目录 os.listdir() # 列出当前目录内容 # 路径操作 os.path.join('dir', 'file.txt') # 跨平台路径拼接 os.path.exists('file.txt') # 检查路径存在性
sys
模块import sys sys.argv # 命令行参数 sys.path # Python模块搜索路径 sys.exit(0) # 退出程序
shutil
模块import shutil shutil.copy('src.txt', 'dst.txt') # 文件复制 shutil.rmtree('dir') # 递归删除目录
pathlib
(Python 3.4+)from pathlib import Path p = Path('/path/to/file') p.parent # 获取父目录 p.with_suffix('.txt') # 修改后缀名
datetime
模块from datetime import datetime, timedelta now = datetime.now() # 当前时间 future = now + timedelta(days=7) # 时间计算
time
模块import time time.time() # 时间戳 time.sleep(1.5) # 暂停执行
json
模块import json data = {'key': 'value'} json_str = json.dumps(data) # 字典转JSON字符串 data = json.loads(json_str) # JSON字符串转字典
pickle
模块import pickle with open('data.pkl', 'wb') as f: pickle.dump(data, f) # 序列化到文件
math
模块import math math.sqrt(16) # 平方根 math.factorial(5) # 阶乘计算
random
模块import random random.random() # 0-1随机浮点数 random.choice(['a','b','c']) # 随机选择
numpy
import numpy as np arr = np.array([1,2,3]) arr.mean() # 计算平均值
pandas
import pandas as pd df = pd.DataFrame({'col1': [1,2], 'col2': ['a','b']}) df.describe() # 统计摘要
matplotlib
import matplotlib.pyplot as plt plt.plot([1,2,3], [4,5,6]) plt.show() # 显示图形
requests
import requests r = requests.get('https://api.example.com') r.json() # 解析JSON响应
urllib
from urllib.request import urlopen with urlopen('http://example.com') as response: html = response.read()
flask
from flask import Flask app = Flask(__name__) @app.route('/') def home(): return "Hello World"
Django
# 需要单独安装 django-admin startproject mysite
threading
import threading def worker(): print("Thread working") t = threading.Thread(target=worker) t.start()
multiprocessing
from multiprocessing import Process def worker(): print("Process working") p = Process(target=worker) p.start()
asyncio
import asyncio async def main(): print('Hello') await asyncio.sleep(1) print('World') asyncio.run(main())
sqlite3
import sqlite3 conn = sqlite3.connect('example.db') cursor = conn.cursor() cursor.execute('CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY)')
pymysql
import pymysql conn = pymysql.connect(host='localhost', user='root')
pymongo
from pymongo import MongoClient client = MongoClient('mongodb://localhost:27017/') db = client['mydatabase']
unittest
import unittest class TestStringMethods(unittest.TestCase): def test_upper(self): self.assertEqual('foo'.upper(), 'FOO')
pdb
import pdb def buggy_func(): pdb.set_trace() # 设置断点 # 调试代码
模块名称 | 主要功能 |
---|---|
re | 正则表达式操作 |
logging | 日志记录系统 |
argparse | 命令行参数解析 |
collections | 扩展数据结构(如OrderedDict) |
itertools | 迭代器工具函数 |
Python的模块生态系统是其核心优势之一,本文介绍的模块只是冰山一角。实际开发中建议: 1. 优先使用标准库模块 2. 通过pip search
探索第三方模块 3. 关注PyPI上的热门模块(如tqdm
、pillow
等)
掌握这些常用模块将显著提升开发效率,建议读者通过官方文档深入理解各模块的高级用法。 “`
注:本文约1850字,实际字数可能因格式调整略有变化。建议通过实际代码示例加深理解,并定期关注Python标准库的更新(如Python 3.10新增的zoneinfo
模块)。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。