首页 论坛 置顶 节省你数小时工作的十大Python库

正在查看 1 个帖子:1-1 (共 1 个帖子)
  • 作者
    帖子
  • #12986

    如果你经常编写Python代码,你就会知道有些任务是多么的重复乏味。

    Python拥有一些非常强大的库,可以为你节省数小时(甚至数天)的工作时间。问题是?大多数人仍然在使用一些主流库——NumPy、Pandas和Requests——而没有意识到还有一些隐藏的宝藏库可以自动化、优化和简化许多任务。

    所以这里有一份10个Python库的列表,可以帮助你更快地完成工作。

    1. Rich – 不再使用无聊的打印语句

    Rich是一个改变游戏规则的库,专注于美观格式化的控制台日志。它允许你打印表格、语法高亮的代码、Markdown,甚至进度条。非常适合调试或让CLI工具更具视觉吸引力。

    节省的时间:不再需要丑陋的打印调试或手动格式化表格。

    from rich.console import Console
    console = Console()
    
    console.print("你好, [bold magenta]Rich![/bold magenta]")

    2. Typer – 轻松编写命令行接口

    如果你曾经在使用 argparse 时感到困扰,那么你一定会喜欢 Typer。它基于 FastAPI 的结构,使得构建命令行接口变得极其简单。

    节省的时间:不再需要手动解析命令行参数。只需为你的函数添加类型提示,Typer 会处理其余的工作。

    
    import typer
    app = typer.Typer()
    
    @app.command()
    def hello(name: str):
        print(f"Hello {name}")
    
    app()
    
    

     

    3. Polars – Pandas 的更快替代品

     

    如果你觉得 Pandas 的操作很慢,Polars 是你需要的升级。它是一个极快的数据框库,能够更高效地处理大数据集。

     

    节省的时间: 显著减少大数据的处理时间。

     

    import polars as pl
    df = pl.read_csv("data.csv")
    df.filter(pl.col("age") > 30)
    

     

    4. FastAPI – 构建API的现代方式

    Django和Flask都很优秀,但FastAPI是一个完全不同的层次。它速度快,内置验证,并且能够自动生成API文档。

    节省的时间:更少的样板代码,自动验证,以及更快的性能。

    from fastapi import FastAPI
    app = FastAPI()
    @app.get("/")
    def read_root():
    
    
    
    return {"message": "你好,FastAPI!"}
    

    5. Pydantic – 停止手动编写数据验证

    如果你厌倦了手动编写验证逻辑,Pydantic 是你的最佳选择。它允许你使用 Python 类型提示定义具有自动验证的数据模型。

    节省的时间:无需编写复杂的验证函数。

    
    from pydantic import BaseModel
    class User(BaseModel):
        name: str
        age: int
    user = User(name="John", age="25")  # 引发验证错误
    

    6. Loguru – 让日志记录变得极其简单

    Python内置的日志模块功能强大,但过于复杂。Loguru 使日志记录变得像写打印语句一样简单。

    节省的时间:无需配置复杂的日志设置。

    from loguru import logger
    logger.info("这是一条信息消息")
    

    7. TQDM – 轻松添加进度条

    如果你在处理耗时的循环,TQDM 是必备工具。它允许你只用一行代码就能为循环添加进度条

    节省的时间: 使长时间运行的循环可视化跟踪。

    from tqdm import tqdm
    for i in tqdm(range(100)):  
        pass  # 在这里添加你的逻辑

     

    8. Shapely – 轻松处理几何对象

     

    如果您处理地理空间数据,Shapely 使得与几何对象的工作变得轻而易举。

     

    节省时间:无需手动计算交点、距离或形状。

     

     

    from shapely.geometry import Point
    point = Point(1.0, 2.0)
    print(point.x, point.y)

     

     

    9. Pytest – 更快地编写更好的测试

     

    忘掉 Python 内置的 unittest 吧。Pytest 使得编写和运行测试变得直观且高效。

     

    节省时间:更简洁的语法、自动发现和更好的调试。

     

     

    def test_example():
        assert 2 + 2 == 4
    

     

    使用单个命令运行所有测试:

    pytest
    

    10. Playwright – 像专业人士一样自动化浏览器操作

    对于网页抓取或自动化测试,Playwright 是 Selenium 的强大替代品。

    节省时间: 更快的执行速度,无头浏览,以及更好地处理现代网页应用。

    from playwright.sync_api import sync_playwright
    with sync_playwright() as p:
        browser = p.chromium.launch()
        page = browser.new_page()
        page.goto("https://example.com")
        print(page.title())
    
    browser.close()

    如果你发现自己在重复某些任务,可以寻找一个可以自动化简化的Python库。很可能,已经有人为你构建了解决方案。

    你使用过这些库中的哪些?还有其他节省时间的Python宝藏吗?请在评论中分享!

正在查看 1 个帖子:1-1 (共 1 个帖子)
  • 哎呀,回复话题必需登录。