Tổng kết Thư viện chuẩn Python — 17 module chia thành 7 danh mục

Tổng kết 17 module thư viện chuẩn theo 7 nhóm, và bộ tiêu chí chuyển sang thư viện ngoài: urllib→requests, csv→pandas, math→NumPy, unittest→pytest, cho bước kế tiếp.

Bức tranh tổng thể — 17 module thư viện chuẩn

Thư viện chuẩn của Python là tập hợp các module được tích hợp sẵn trong Python — không cần cài đặt. Series này đã trình bày 17 module hữu ích nhất. Chúng ta bắt đầu với việc lấy thông tin từ môi trường runtime và đi lên thang trừu tượng qua số học, chuỗi, I/O dữ liệu, cấu trúc dữ liệu, vận hành và đồng thời.

Thư viện chuẩn trong 7 danh mục
Đồng thời / song songasyncio / threadingmultiprocessingQuản lý tài nguyên / vận hànhcontextlibloggingMở rộng cấu trúc dữ liệucollections / itertoolsdataclassesI/O dữ liệujson / csvpickle / hashlibRuntime và filesys / argparseos / pathlibSố / ngày / randomdatetime / mathrandom / secretsChuỗi / văn bảnre / stringtextwrap / pprint
Thư viện chuẩn được tổ chức thành 7 danh mục. Xếp chồng từ dưới lênruntime / số học / chuỗi làm nền tảng, I/O dữ liệu và cấu trúc dữ liệu ở giữa, vận hành và đồng thời ở trên cùng.

Bài viết theo danh mục

Đây là danh sách bài viết của từng danh mục, kèm theo các loại vấn đề mà mỗi danh mục giải quyết.

Danh mụcBài viếtVấn đề điển hình giải quyết
Runtime và filesys-argparse / os-pathlib / shutil-tempfileTham số CLI, thao tác đường dẫn, xử lý file hàng loạt
Số / ngày / randomdatetime-time / math-statistics / decimal-fractions / random-secretsSố học ngày, tính tiền chính xác, số ngẫu nhiên và token
Chuỗi / văn bảnre / string-textwrap / pprintRegex, thay thế template, in đẹp
I/O dữ liệujson-csv / pickle-base64 / hashlibDữ liệu có cấu trúc, tuần tự hóa, mã hóa, hashing
Mở rộng cấu trúc dữ liệucollections / itertools-functools / enum-dataclassesTổng hợp, tổ hợp, biến đổi hàm, hằng số có tên, data class
Quản lý tài nguyên / vận hànhcontextlib / loggingKhối with tùy chỉnh, ghi log
Đồng thời / song songasyncio-basics / asyncio-tasks / threading-multiprocessingThực thi đồng thời, tính toán song song, gọi lệnh ngoài

Thư viện ngoài là gì?

Thư viện ngoài là các package không đi kèm Python — bạn cài chúng bằng pip install <library>. Chúng thường chuyên biệt cho các trường hợp sử dụng cụ thể như framework web, phân tích dữ liệu và machine learning, và được phát hành bởi các cộng đồng hoặc công ty.

Thư viện chuẩn vs. thư viện ngoài
Thư viện chuẩn(json / csv / re, ...)Đi kèm Pythonimport là dùng ngayThư viện ngoài(pandas / requests, ...)Cài qua pip installrồi import để dùng
Thư viện chuẩn đi kèm Python — import là dùng được ngay. Thư viện ngoài là một package chuyên biệt mà bạn cài bằng pip install trước, sau đó import như bất kỳ module nào khác.

Thư viện chuẩn và thư viện ngoài — quan hệ giữa chúng

Thư viện chuẩn là điểm dừng đầu tiên, nhưng với các dự án lớn hơn, có những lĩnh vực mà thư viện ngoài đơn giản là dễ làm việc hơn. Nắm các khái niệm trong thư viện chuẩn trước, sau đó tiến ra ngoài — các ý tưởng thiết kế được mang theo (pandas mở rộng csv, requests là urllib.request thân thiện hơn, pytest là người anh em cải tiến của unittest), nên đường cong học tập trở nên thoải hơn.

Các lộ trình nâng cấp chính từ thư viện chuẩn ra ngoài
Chuẩnurllib.requestNgoàirequests / httpxChuẩncsv / collectionsNgoàipandas / polarsChuẩnmath / statisticsNgoàiNumPy / SciPyChuẩnunittestNgoàipytest
Bốn lộ trình chính khi dự án lớn lên. Thư viện chuẩn ở bên trái cho nền tảng, thư viện ngoài ở bên phải để mở rộng quy mô.

Thư viện ngoài theo trường hợp sử dụng

Khi đã vững thư viện chuẩn, hãy đem vào các thư viện ngoài phù hợp với mục tiêu của bạn. Mỗi lĩnh vực đều có thư viện định danh của nó, nên chọn một đại diện và bắt đầu dùng là con đường nhanh nhất tiến lên.

Thư viện ngoài định danh theo trường hợp sử dụng
Phát triển webFastAPI / DjangoFlaskPhân tích dữ liệupandas / NumPymatplotlibMachine learningscikit-learnPyTorch / TensorFlowHTTP requestsrequests / httpxTestingpytest
Mỗi trường hợp sử dụng đều có thư viện ngoài định danh. Năm lĩnh vực chính: phát triển web, phân tích dữ liệu, machine learning, HTTP và testing.
QUIZ

Kiểm tra kiến thức

Hãy trả lời từng câu hỏi một.

Câu 1Bạn dùng thư viện chuẩn nào để xác minh tính toàn vẹn của một file đã tải về?

Câu 2Cách súc tích nhất để đếm xem mỗi phần tử xuất hiện bao nhiêu lần trong một list là gì?

Câu 3Khi bạn cần vượt qua khả năng của csv và làm phân tích dữ liệu nghiêm túc, thư viện ngoài nào là lựa chọn chuẩn?