Pydantic 是一个强大的 Python 库,主要用于数据验证和设置管理。它通过 Python 类型注解来定义数据结构,并提供了自动的数据验证、序列化和文档生成功能。
Pydantic 特别适合用于:
API 请求/响应验证
functools 模块是 Python 标准库中一个用于高阶函数的工具模块。
所谓高阶函数,就是指那些操作或返回其他函数的函数。
functools 提供了一系列强大的工具,用于装饰器、缓存、比较、偏函数等功能,能帮助你编写更简洁、高效和可复用的代码。
1. @functools.lru_cache - 缓存装饰器
当使用相同的参数再次调用该函数时,它会直接返回缓存的结果,而无需重新计算。
应用场景:适用于计算昂贵
asyncio.TaskGroup 是 Python 3.11 引入的一个上下文管理器,提供了一种现代的方式来管理相关任务的组。
它是 asyncio.gather() 的更直观、更安全的替代方案。
主要特性
自动取消:如果组中任何任务失败,所有其他任务会自动取消
清晰的错误处理:异常会被正确传播
上下文管理器接口:为分组任务提供了自然的范围界定
基于Redis的高性能代理池管理系统,支持多种代理协议(HTTP/HTTPS/SOCKS),提供代理的自动验证、智能筛选、并发管理和状态维护,帮助用户轻松获取可靠代理资源。
项目地址:https://gitee.com/yxna/proxy_pool
用来搜索日志文件
import asyncio
import os
import re
from datetime import datetime
from typing import List, Optional
import aiofiles
async def search_logs(log_file: str,
keywords: Optional[List[str]] = None,
level: Optional[str] = None,
count: int = 10,
start_time
页面明亮版
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>网址扫描器</title>
<style>
body {
font-family: 'Microsoft YaHei', sans-serif;
max-width: 800px;
// ==UserScript==
// @name Cookie管理工具
// @namespace http://tampermonkey.net/
// @version 2.0
// @description 清理、导出和导入当前网站的Cookie、localStorage和sessionStorage
// @author yxn
// @match *://*/*
// @grant GM_download
// @grant GM_xmlhttpRequest
// @grant GM_setValue
// @grant GM_getValue
// @grant
dataclass 作为标准库中的一个模块,从 Python 3.7 开始引入。随着 Python 版本的不断更新,dataclass 逐渐发展和完善,为开发者提供了一种更便捷的方式来创建和管理数据类。
dataclass 非常适合创建主要用于存储数据的类,可以显著减少样板代码,同时保持代码清晰可读。
from dataclasses import dataclass, field, astuple, asdict
from typing import List
@dataclass(
# frozen=True, # 冻结数据类,防止被修改(只读)
# order=True, # 按照定义顺序排序
)
class Person:
name
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>高效批量图片压缩工具V2.0</title>
<style>
:root {
--primary-color: #3498db;
--error-color: #e74c3c;
}
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
这个装饰器确保被装饰的函数在同一时间只能执行一次,其他调用会被立即拒绝(可自定义拒绝回调和返回值),支持同步/异步函数且线程安全。
应用场景
按钮点击限制(GUI应用)
API端点限流
表单提交限制,防止重复提交
核心功能
严格单次调用限制:确保函数在执行完成前只能被调用一次,后续调用会被立即拒绝
线程安全:使用 threading.Lock() 保证多线程环境下的安全性
同步/异步兼容:自动识别被装饰函数是同步还是异步,无需手动指定
回调机制:
成功回调 (on_success):函数执行成功后触发
拒绝