Python

Python

JWT 完全指南

相关文档:FastAPI完全指南(/fastapi-wan-quan-zhi-nan/) SQLModel完全指南(/sqlmodel-wan-quan-zhi-nan/) Pydantic完全指南(/pydantic-wan-quan-zhi-nan/) JWT(JSON Web Token)是一种开放标准(RFC 7519),用于在各方之间安全地传输 JSON 格式的声明信息,常用于 身份认证 和 信息交换。 JWT 由三部分组成,用 . 分隔: 单 Token 方案的问题:短有效期则频繁重新登录,长有效期则安全风险高。 双 Token 方案: JW

By yellowdog

Python

FastAPI 完全指南

FastAPI 是一个用于构建 API 的现代、高性能 Python Web 框架,基于标准 Python 类型提示。主要特点: ASGI(Asynchronous Server Gateway Interface)是 WSGI 的异步升级版。FastAPI 基于 Starlette,Starlette 实现了 ASGI 接口。运行 FastAPI 需要 ASGI 服务器,如 uvicorn 或 hypercorn。 FastAPI 自动根据路由和 Pydantic 模型生成两套文档: Path() 参数表: Query() 参数表: 注意:Pydant

By yellowdog

Python

Celery 完全指南

Celery 是 Python 中最成熟的分布式任务队列,用于: Flower 提供:任务实时监控、Worker 状态、任务历史、手动触发任务等。 同一个任务可能因网络问题被重复投递,确保多次执行结果相同: 只传 ID,不传整个对象(对象可能很大,且在任务执行时数据可能已变化): Celery 应用对象和任务定义通常存在循环导入风险,推荐用工厂模式或在 Django 中用 shared_task: Celery Beat 使用 celerybeat-schedule 文件存储调度状态,多个 Beat 进程同时运行会冲突。生产环境只能运行一个 Beat 实

By yellowdog

Python

BeautifulSoup 与 lxml 完全指南

BeautifulSoup4 和 lxml 是 Python 爬虫中最常用的两个 HTML/XML 解析库。BeautifulSoup 提供简洁的 Python 风格 API,lxml 基于 C 语言实现,性能极高,二者常配合使用。 创建 BeautifulSoup 对象时必须指定解析器。不同解析器在速度、容错性和依赖上有所差异。 推荐在生产爬虫中统一使用 lxml 解析器。 返回第一个匹配的 Tag 对象,未找到返回 None。 返回所有匹配的 Tag 列表,未找到返回空列表 。 tag.string 和 tag.text 行为有细微差别,需注意区分。

By yellowdog

Python

魔术方法完全参考

魔术方法(Magic Methods),也称双下方法(Dunder Methods),是 Python 中以双下划线开头和结尾的特殊方法。Python 解释器在特定操作时自动调用这些方法,通过实现它们可以让自定义类与 Python 的内置语法和协议无缝集成。 创建实例时最先调用的静态方法,负责分配内存并返回新实例。 返回值:返回新创建的实例(通常是 cls 的实例)。若不返回 cls 的实例,则不会调用 __init__。 触发时机:调用 MyClass(...) 时,在 __init__ 之前调用。 实例初始化方法,负责设置实例属性。 返回值:必须返回

By yellowdog

Python

Python 装饰器与函数高级用法

不接收 self 或 cls,等同于普通函数,只是命名空间归类在类里。 Python 3.10+ 起静态方法继承原函数的属性(__module__、__name__、__qualname__、__doc__、__annotations__),并新增 __wrapped__ 属性,且可直接作为普通函数调用(无需通过类或实例)。 接收 cls(类本身)而非 self(实例),可在不创建实例的情况下访问类变量。 Python 3.10+ 起类方法继承原函数的属性(__module__、__name__、__qualname__、__doc__、__annota

By yellowdog

Python

Python 内置数据类型完全参考

Python 整数无大小限制,自动支持大整数运算。 返回表示该整数所需的二进制位数(不含符号位和前导零)。 返回整数二进制表示中 1 的个数(汉明重量)。 返回 (numerator, denominator) 使分数等价于该整数,分母为 1。 始终返回 True。为与 float.is_integer() 进行鸭子类型兼容而存在。 基于 IEEE 754 双精度(64 位)。 判断浮点值是否为整数(无小数部分)。 返回 IEEE 754 十六进制字符串表示。用于精确序列化浮点数。 从 hex() 返回的字符串还原浮点数,可跨平台精确还原。 返回分子/分

By yellowdog