自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

山低水浅有陋室,檐下听雨敲键盘

松下问童子,言师采药去。只在此山中,云深不知处

  • 博客(205)
  • 收藏
  • 关注

原创 B/S实现 - 学员管理系统 - 10

B/S版学生管理系统摘要 本系统基于FastAPI框架和SQLite3数据库实现了一个RESTful API的学生管理系统。系统包含完整的CRUD功能,支持学生信息的增删改查操作,并提供了数据验证机制。主要特点包括: 使用SQLite3存储学生数据,自动初始化数据库表结构 采用Pydantic模型进行请求/响应数据验证 实现学号、姓名和联系方式的唯一性检查 包含性别和年龄的业务规则验证 提供简洁的API接口文档 系统结构清晰,包含数据库操作辅助函数和FastAPI路由定义,可扩展性强。

2026-05-17 20:52:45 26

原创 图像界面编程实现 - 学员管理系统 - 09

本文介绍了一个基于PySide6和SQLite3的学生管理系统实现。系统采用MVC架构,包含数据模型(Student类)、数据库操作层和GUI界面层。数据库操作实现了学生信息的增删改查功能,包括初始化数据库、添加/删除学生、更新年龄/联系方式、按学号/姓名/联系方式查询等。GUI界面使用PySide6构建,提供表格展示学生信息,并支持各种操作按钮。系统通过数据验证确保性别只能是"男"或"女",年龄必须大于5岁,并处理了学号、姓名和联系方式的唯一性约束。该实现完整满足了学生管理的基本需求。

2026-05-17 20:32:32 30

原创 Python 3.12 Std_Libs - String - 07 - 格式化与编码

本文深入探讨了Python字符串处理中的格式化与编码方法。首先介绍了format和format_map方法,详细解析了其语法、格式说明符及底层实现机制。接着讲解了字符映射工具maketrans和translate的使用方法及性能特点。在编码部分,重点分析了encode方法的编码过程及错误处理策略,并对比了其与decode的关系。此外,还介绍了制表符展开方法expandtabs的实现原理,以及字符串对齐填充方法center、ljust、rjust和zfill的底层实现。

2026-05-15 21:56:13 349

原创 Python 3.12 Std_Libs - String - 06 - 前缀和后缀

Python 3.12 提供了强大的字符串前缀和后缀处理方法,包括 startswith()、endswith()、removeprefix() 和 removesuffix()。这些方法支持高效检查、安全删除前缀/后缀,底层实现优化了性能。标准库的 string 模块提供辅助功能,而 stringprep 模块则处理国际化字符串的规范化匹配。通过合理使用这些工具,可以编写更简洁、高效的字符串处理代码,特别适用于URL、文件路径等场景。

2026-05-14 21:28:03 747

原创 Python 3.12 Std_Libs - String - 05 - 内容判断

本文深入解析了Python字符串内容判断方法,涵盖12种内置方法及其底层实现原理。主要内容包括: 字母数字判断:isalpha(), isalnum()等方法区分字母、数字字符 数字类型判断:详解isdecimal(), isdigit(), isnumeric()的区别及Unicode处理 大小写检查:islower(), isupper(), istitle()的实现机制 特殊字符判断:isspace()和isprintable()的应用场景 标识符验证:isidentifier()的规则实现 ASCI

2026-05-13 21:29:10 417

原创 Python 3.12 Std_Libs - String - 04 - 分割与连接

Python字符串处理的核心操作包括分割(split、rsplit、splitlines等)和连接(join),这些方法高效处理文本解析、数据格式化等任务。CPython底层通过优化算法(如memchr快速查找)和内存预分配策略实现高性能。标准库的string模块提供辅助功能如capwords,而stringprep模块则用于国际化字符串预处理。正确使用这些方法(如优先选择join而非循环拼接)能显著提升性能,适用于日志处理、文件解析等场景。

2026-05-12 21:42:29 685

原创 Python 3.12 Std_Libs - String - 03 - 去除空白与填充

s = ".,;hello,.;在 CPython 中,空白字符的判断由函数完成。该函数依据 Unicode 标准(例如字符类为Zs(空格分隔符)以及\t\n\r\f\v等)定义。空格 (U+0020)制表符 (U+0009)换行符 (U+000A)回车符 (U+000D)换页符 (U+000C)垂直制表符 (U+000B)不换行空格 (U+00A0)以及其他各种 Unicode 空格字符。strip()默认行为会移除所有这些字符。方法用途底层要点strip()

2026-05-11 21:55:56 388

原创 Python 3.12 Std_Libs - String - 02 - 查找与替换

本文系统介绍了 Python 3.12 中字符串查找与替换的核心方法。

2026-05-10 21:16:33 170

原创 Python 3.12 Std_Libs - String - 01 - 大小写

Python 3.12 提供了全面的字符串大小写转换方法,包括内置的str,及string、stringprep等库。 capitalize()、title()、upper()、lower()、swapcase() 和 casefold(),适用于不同场景。

2026-05-10 20:55:41 165

原创 图像界面编程实现 - 学员管理系统 - 08

本文介绍了一个基于Tkinter和SQLite的图形界面学员管理系统。

2026-05-10 17:36:27 41

原创 函数式编程实现 - 学员管理系统 - 07

本文介绍了一个函数式编程实现的学员管理系统,采用SQLite3数据库存储数据.

2026-05-10 17:13:16 34

原创 函数式编程实现 - 学员管理系统 - 06

摘要:本文介绍了一个基于函数式编程和MySQL数据库的学生管理系统实现。

2026-05-10 16:36:00 39

原创 函数式编程实现 - 学员管理系统 - 05

本文介绍了一个基于函数式编程的学员管理系统实现, 使用excel实现数据持久化。

2026-05-10 15:53:48 36

原创 函数式编程实现 - 学员管理系统 - 04

本文介绍了一个基于函数式编程的学员管理系统实现,通过Json文件进行持久化。

2026-05-10 15:39:31 430

原创 函数式编程实现 - 学员管理系统 - 03

本文介绍了一个基于函数式编程的学员管理系统实现-3 版本优化迭代

2026-05-10 11:26:06 34

原创 函数式编程实现 - 学员管理系统 - 02

这篇文章介绍了一个使用函数式编程实现的学员管理系统。

2026-05-10 11:16:49 39

原创 函数式编程实现 - 学员管理系统 - 01

摘要 本文介绍了一个基于函数式编程的学员管理系统实现方案。系统核心功能包括:添加/删除/修改学员信息(学号、姓名、性别、年龄、联系方式),查询学员(按学号/姓名/联系方式)以及显示所有学员信息。系统采用Python的dataclass定义学员数据模型,通过全局列表存储数据,并实现了完善的输入校验机制(如唯一性检查、年龄限制等)。关键函数包括:学号/姓名唯一性验证、学员查找、信息展示等交互式功能模块,每个操作都包含详细的错误处理和用户确认流程。系统通过命令行菜单驱动,支持安全退出功能。

2026-05-05 18:03:21 48

原创 Python 3.12 OOP - 10 - New Features

Python 3.12 在面向对象编程方面带来的多项改进,主要包括:1)类型系统增强,包括新的type语句简化类型别名定义、泛型类/函数的简化写法、新增@override装饰器;2)错误信息优化,提供更精确的语法错误定位和智能建议;3)性能提升,如对象创建加速、__slots__内存优化和描述符查找加速;4)新增特性如数据类支持slots参数、Enum改进等。

2026-05-04 11:15:49 566

原创 Python 3.12 OOP - 09 - Design Patterns

Python 3.12 OOP - 本文介绍了Python中常用的设计模式实现,包括: 单例模式,工厂模式,观察者模式,策略模式...

2026-05-04 11:11:23 686

原创 Python 3.12 OOP - 08 - Protocols

Python 3.12 OOP - Protocols - typing.Protocol通过静态鸭子类型解决了传统鸭子类型的文档模糊和类型检查问题。协议定义接口但不强制继承,任何实现协议方法的类自动符合该协议。

2026-05-03 18:54:34 42

原创 Python 3.12 OOP - 07 - Enum

Python 3.12中的enum模块提供了强大的枚举功能,解决了传统常量定义方式的问题。枚举具有类型安全、可读性强、可迭代等优势,支持自动赋值、方法添加、继承等特性。本章详细介绍了枚举的基本用法、成员值类型、自动赋值(auto())、比较排序、继承关系,以及IntEnum、StrEnum、Flag等扩展类型。

2026-05-03 18:50:11 146

原创 Python 3.12 OOP - 06 - dataclasses

本文介绍了Python 3.7引入的dataclasses模块,它通过@dataclass装饰器简化数据类的创建,自动生成__init__、__repr__、__eq__等方法。

2026-05-03 18:22:05 143

原创 Python 3.12 OOP - 05 - Metaclass

本文深入探讨了Python中的元类(Metaclass)概念及其应用。元类是创建类的"工厂",作为"类的类"定义了类的创建行为。

2026-05-03 17:43:40 418

原创 Python 3.12 OOP - 04 -Descriptor

文章摘要: Python描述符协议是控制属性访问的核心机制,通过实现__get__、__set__和__delete__方法来自定义属性行为。描述符分为数据描述符(优先级高于实例字典)和非数据描述符(优先级低于实例字典)。

2026-05-03 17:16:20 337

原创 Python 3.12 OOP - 03 - Magic Methods & Operator Override

本文介绍了Python 3.12中的特殊方法(魔术方法)及其应用。

2026-05-03 16:36:28 343

原创 Python 3.12 OOP - 02 - Inheritance & Polymorphism

本文深入探讨了Python面向对象编程中的继承与多态特性。

2026-05-03 16:26:05 705

原创 Python 3.12 OOP - 01 - Overview

摘要:本文系统讲解Python面向对象编程的核心概念与实践。从类与对象基础、继承多态、特殊方法到高级主题如描述符、元类和数据类,全面覆盖OOP关键知识点。

2026-05-03 12:16:00 404

原创 Python 3.12 Descriptor - 04 - classmethod

Python 类方法(classmethod)解析 类方法是Python中通过@classmethod装饰器定义的特殊方法

2026-05-03 11:29:45 510

原创 Python 3.12 Descriptor - 03 - staticmethod

Python 3.12 中的 staticmethod 是一个非数据描述符,用于定义与类和实例无关的工具函数。它既不接收隐式的 self 也不接收 cls,而是作为普通函数存在。

2026-05-03 10:45:13 708

原创 Python 3.12 Descriptor - 02 - property

Python描述符机制通过property装饰器实现属性访问控制。本文解析了property的工作原理,包括@property、setter和deleter的使用方式,并模拟了其底层实现。

2026-05-02 20:59:53 574

原创 Python 3.12 Descriptor - 01 - Overview

本文全面解析了Python 3.12中的描述符(Descriptor)机制。描述符是实现属性访问控制的核心协议,通过实现__get__、__set__、__delete__和__set_name__方法,可以自定义属性访问行为。

2026-05-02 20:11:03 470

原创 Python 3.12 关键字(综合实践篇):综合应用与最佳实践

本文通过构建任务队列系统的实战案例,展示了Python 3.12关键字的综合应用。案例包含同步(多线程)和异步(协程)两种实现方式。

2026-04-26 20:47:35 359

原创 Python 3.12 Key Words - 14 - type

本文深入探讨 Python 3.12 中 type 作为软关键字的用法。

2026-04-26 15:50:15 363

原创 Python 3.12 Key Words - 13 - yield

摘要:Python生成器通过yield实现惰性求值,能够暂停和恢复函数执行状态,适用于处理大数据集和无限序列。yield from简化了生成器嵌套,支持值传递和异常处理,可构建复杂数据处理管道。

2026-04-26 12:49:42 930

原创 Python 3.12 Key Words - 12 - async、await

本文深入讲解Python 3.12中async和await关键字的用法与原理。异步编程通过协程模型解决了I/O密集型任务的高并发需求,相比多线程/回调方案更高效优雅。async用于定义协程函数和异步上下文管理器,await则暂停当前协程等待异步操作完成。

2026-04-26 11:24:08 695

原创 Python 3.12 Key Words - 11 - class、def、return、lambda、pass

本文深入剖析Python中五个函数与定义关键结构关键字: def - 函数定义核心,支持多种参数形式(位置/默认/可变参数)和类型注解 return - 函数返回值机制,可返回多个值(实质是元组),对应底层字节码RETURN_VALUE class - 面向对象编程基础,包含类变量、实例变量、继承体系和特殊方法 lambda - 创建匿名函数,常用于简单操作和函数式编程场景 pass - 空操作占位符,保持语法完整性

2026-04-26 10:06:05 454

原创 Python 3.12 Key Words - 10 - with、as、 del

Python 3.12 资源管理核心:with、as、del with 语句通过上下文管理器协议实现自动资源管理,替代繁琐的 try/finally,确保文件、锁等资源正确释放。

2026-04-25 22:57:40 166

原创 Python 3.12 Key Words - 09 - global、nonlocal

Python作用域控制:本文深入讲解了Python中global和nonlocal关键字的作用与使用方法。

2026-04-25 18:41:46 388

原创 Python 3.12 Key Words - 08 - import、from、as

本文深入解析了Python 3.12中的三个关键导入语句:import、from和as。import用于导入整个模块,from用于导入模块中的特定成员,as则为导入对象创建别名。

2026-04-25 18:11:36 386

原创 Python 3.12 Key Words - 07 - try、except、finally、raise、assert

本文详细解析了Python异常处理的关键字:try、except、finally、raise和assert。try/except用于捕获和处理异常,finally确保清理代码执行,raise主动抛出异常,assert用于调试断言。

2026-04-25 17:46:23 442

【Python标准库】基于源码的Logging模块分析:日志系统架构设计与实现原理研究

内容概要:通过对 Python 3.12 中 logging 模块的源码分析,深入讲解了日志系统的架构设计与核心组件实现。文章涵盖日志级别管理、日志记录(LogRecord)的创建与格式化、过滤器(Filter)和处理器(Handler)的工作机制、线程安全控制、模块初始化及清理流程等内容。重点剖析了模块级锁的使用、_srcfile 和 currentframe 等底层机制的设计考量,以及如何通过弱引用、RLock、fork 安全等技术保障系统的稳定性和可扩展性。此外,还介绍了格式化样式(%、{}、$)的实现差异和 Manager 对 logger 层级的管理逻辑。; 适合人群:具备一定 Python 编程基础,熟悉面向对象和模块导入机制,对标准库源码有兴趣的研发人员或进阶学习者。; 使用场景及目标:①理解 Python logging 模块的内部工作原理,掌握日志系统的设计模式与最佳实践;②学习如何在大型项目中实现线程安全、资源管理和模块初始化;③为自定义日志框架或调试复杂日志问题提供理论支持与实现参考。; 阅读建议:此资源侧重于源码级分析,建议读者结合 Python 官方文档与实际代码调试进行学习,重点关注关键类之间的协作关系及异常处理机制,以全面掌握 logging 模块的设计精髓。

2026-03-22

Python3.12标准库Logging的练习代码,包含各个Logging中的组件代码练习

参考我的博客专栏 PythonBasic中的logging博客,专栏地址:https://blog.csdn.net/asduang/category_7590981.html,可同步进行学习练习。

2026-03-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除