发布日期 :2026-08-28 08:17:32 UTC
作者 :xuzhiping
访问量: 10 次浏览
避开 numpy/pandas/fastapi 这类大众库,分为开发调试工具、数据处理、地理空间(GIS 方向)、命令行 & 脚本、时间日期、工程配置、小众可视化,每个库附带简单示例、安装命令、适用场景。
不用手动写print(f"var={var}"),自动打印变量名、值、代码行号。
pip install icecream
from icecream import ic
def calc(a,b):
return a*2 + b
ic(calc(3,5))
x = 123
ic(x)
输出会直接显示:ic| example.py:5 in calc()- return: 11
适合:日常调试,jupyter 脚本调试。
比 cProfile 更直观,同时统计 CPU、内存、GPU 占用,生成网页可视化报告。
pip install scalene
# 命令行直接运行
scalene your_script.py
比标准库 lru_cache 更强大,支持内存缓存、磁盘文件缓存、过期时间,适合爬虫、复杂计算。
pip install cachier
from cachier import cachier
import time
@cachier(cache_dir="./cache")
def heavy_calc(x):
time.sleep(2)
return x**2
print(heavy_calc(10)) #第一次慢,第二次直接读缓存
不需要本地安装 git 命令,纯 Python 读写 git 仓库,做代码分析、自动脚本。
pip install dulwich
pandas 配套,一键生成缺失矩阵、热力图,快速看数据空缺模式。
pip install missingno
import missingno as msno
import pandas as pd
df = pd.read_csv("data.csv")
msno.matrix(df)
给 DataFrame 增加大量链式清洗方法,简化列重命名、删除空列、去重。
pip install pyjanitor
import janitor
df = pd.DataFrame(...).clean_names() #批量标准化列名
自动推断 schema、增量同步,把数据库、API 数据导入数据库,不用写大量 boilerplate。
pip install dlt
标准库 itertools 的超级扩展,几十种额外迭代器:窗口、分块、相邻配对。
pip install more‑itertools
from more_itertools import windowed
for win in windowed([1,2,3,4,5],3):
print(win) #(1,2,3) (2,3,4)...
融合 folium、WhiteboxTools,Jupyter 一键交互式地图,支持矢量、栅格、遥感,不用复杂配置,可导出静态图、HTML 地图GitHub。
pip install leafmap
import leafmap
m = leafmap.Map()
m.add_basemap("Gaode.Satellite")
m
基于 GeoArrow+deck.gl,处理百万、千万级点位性能远强于 folium,适合轨迹、大量点位可视化。
pip install lonboard
DEM、水文、遥感栅格运算,支持 Dask 并行,不需要系统装 GDAL,150 + 空间函数,洪水、坡度、流域计算GitHub。
pip install xarray‑spatial
极简栅格读写运算,和 geopandas 无缝互通,栅格转矢量、等值线生成。
pip install rastr
时区、时间差、日期解析极其友好,解决 python 原生 datetime 时区坑。
pip install pendulum
import pendulum
now = pendulum.now("Asia/Shanghai")
print(now.add(months=2).to_date_string())
替代 subprocess,把系统命令直接像函数调用,代码可读性极强。
pip install plumbum
from plumbum import local
ls = local["ls"]
print(ls("-l"))
任意函数直接转命令行工具,不用写 argparse。
pip install fire
import fire
def hello(name="world"):
return f"hello {name}"
if __name__ == "__main__":
fire.Fire(hello)
命令行:python test.py --name=jack
替代 logging/loguru,结构化日志,本地 / 远端上报,支持 Trace 链路追踪。
pip install logfire
分层配置、多环境配置文件,科研、AI 实验项目必备。
pip install hydra‑core
传入 DataFrame,一键输出整套统计图表,快速做数据探索。
pip install dabl
import dabl
dabl.plot(df, target="label")
jupyter 内交互式 3D 绘图,点云、体渲染,适合地学三维数据。
pip install ipyvolume