# 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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。