摘要: Python 的 GC(垃圾回收)核心是「引用计数 + 标记-清除 + 分代回收」机制,回收时机分「自动触发」和「手动触发」,不同机制的触发时机不同,核心原则是「不影响程序运行效率,同时及时回收无用资源」: 一、核心回收时机(按触发方式分类) 1. 自动触发(最常见,无需手动干预) (1)引用计数为 阅读全文
posted @ 2025-11-19 10:39 wangya216 阅读(42) 评论(0) 推荐(0)
摘要: 文件句柄(File Handle)本质是 操作系统给打开的文件分配的“资源标识ID” —— 你可以把它理解成「文件的专属通行证」: 当你用 open() 打开文件时,操作系统会: 在磁盘找到该文件,验证访问权限(读/写); 分配一块内存存储文件相关信息(如文件位置指针、打开模式、缓冲区); 生成一个 阅读全文
posted @ 2025-11-19 10:27 wangya216 阅读(34) 评论(0) 推荐(0)
摘要: 一、核心问题解答 1. 为什么Python有GC还需要关闭文件/用with打开? GC的核心作用是回收“内存资源”(如无引用的对象),但文件属于操作系统级别的外部资源(非内存资源),GC无法管理: 文件句柄(打开文件后操作系统分配的资源标识)不属于Python对象内存,GC无法自动释放; 若不关闭文 阅读全文
posted @ 2025-11-19 10:18 wangya216 阅读(23) 评论(0) 推荐(0)
摘要: 在文件操作中,这个“记录当前读写位置的指示器”,官方术语叫 File Position Indicator(文件位置指示器),也常称为“文件指针”(注意和C语言的内存指针完全不同,仅为位置标记)。 一、核心定义 本质:记录文件下次读写时的起始字节位置(从文件开头计数,默认以字节为单位)。 关键:每次 阅读全文
posted @ 2025-11-19 10:16 wangya216 阅读(37) 评论(0) 推荐(0)
摘要: re.compile(pattern, flags=0) 的核心作用是 “编译正则表达式模式,生成可重复使用的 Pattern 对象”——本质是把正则字符串“编译”成正则引擎可直接执行的“字节码”,核心价值是 提升重复使用时的效率 + 简化代码。 一、核心用途(用例子说清楚) 提升重复使用的效率(最 阅读全文
posted @ 2025-11-17 22:32 wangya216 阅读(16) 评论(0) 推荐(0)
摘要: { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Python 字符串常用操作完全教程(含代码演示)\n", "> 基于《Python字符串常用操作速查表》v1.0 编写,配套可运行代码示例,适合边学边练\n 阅读全文
posted @ 2025-11-17 22:22 wangya216 阅读(18) 评论(0) 推荐(0)
摘要: 正则表达式贪婪与非贪婪匹配:原理差异与底层算法(严谨版) 正则表达式中贪婪匹配与非贪婪匹配的核心差异,在于量词重复次数的尝试优先级与回溯机制的触发逻辑。二者底层均依赖NFA正则引擎的“逐字符扫描+决策回溯”算法,但匹配策略的本质不同,导致最终匹配结果天差地别。本文将以严谨的表述,系统拆解二者的定义、 阅读全文
posted @ 2025-11-17 21:31 wangya216 阅读(65) 评论(0) 推荐(0)
摘要: 从 C 到 Python:文件操作与上下文管理器的深度解析(避坑指南) 对于习惯了 C 语言手动管理资源的学习者,Python 的文件操作和上下文管理器常常带来认知混淆:为什么 C 必须手动 fopen/fclose,而 Python 能用 with 自动处理?as 关键字是不是多余的?本文将从“文 阅读全文
posted @ 2025-11-16 21:09 wangya216 阅读(11) 评论(0) 推荐(0)
摘要: 断言:从调试利器到程序守护者的全面解析 一、什么是断言?—— 定义与核心价值 断言(Assertion)是编程语言中一种调试与验证机制,用于在代码中嵌入“必须满足的条件”——当条件为True时,程序正常运行;当条件为False时,程序立即终止并抛出错误,暴露潜在问题。 核心价值: 提前暴露隐患:在开 阅读全文
posted @ 2025-11-16 11:17 wangya216 阅读(32) 评论(0) 推荐(0)
摘要: 一、IO编程的核心定义(通俗+严谨) 1. 通俗理解: IO 是 Input/Output(输入/输出) 的缩写,IO编程本质是 “程序与外部设备/资源之间的数据交互” ——就像程序的“进出口业务”: 输入(Input):外部数据流入程序(如读取文件内容、键盘输入、网络接收数据); 输出(Outpu 阅读全文
posted @ 2025-11-16 11:12 wangya216 阅读(25) 评论(0) 推荐(0)
摘要: CPython(Python 官方解释器)对 str 的底层存储实现,核心结论是:Python 3.3+ 采用“柔性字符串存储”(Flexible String Representation),优先使用 UTF-8 编码,仅在必要时动态切换到 UTF-16/UTF-32,而非固定某一种编码。 这种设 阅读全文
posted @ 2025-11-16 10:48 wangya216 阅读(13) 评论(0) 推荐(0)
摘要: C 语言中的字符串跟 Python 里面字符串都有哪些不同? 核心差异:C的字符串是需手动管理的字符数组,Python的是不可变对象,关键不同集中在5点: 本质与存储:C是char[](连续内存的字符序列,以'\0'结尾);Python是str对象(封装了字符数据,无需关注结束符)。 可变性:C字符 阅读全文
posted @ 2025-11-16 10:41 wangya216 阅读(14) 评论(0) 推荐(0)
摘要: 功能 声明(Declaration) 定义(Definition) 告知“有这个东西” ✅ 核心职责 ✅ 自带(包含声明) 绑定类型 ✅ 必须绑定 ✅ 必须绑定(和声明一致) 分配存储单元/实体 ❌ 不分配 ✅ 核心职责(变量给内存,函数给实现) 一句话记死: 声明:报名字+定类型(让编译器认识它) 阅读全文
posted @ 2025-11-16 10:33 wangya216 阅读(7) 评论(0) 推荐(0)
摘要: 对比维度 C 语言函数 Python 函数 声明与定义 可分离(声明写头文件,定义写.c文件),必须先声明(或定义)再使用 声明与定义合一(def语句即完成定义+声明),无需单独声明 类型绑定 必须指定返回值类型、参数类型,类型固定 无需显式指定类型(动态类型),参数/返回值类型可灵活变化 绑定时机 阅读全文
posted @ 2025-11-16 10:32 wangya216 阅读(19) 评论(0) 推荐(0)
摘要: 不完全准确,更严谨的表述是: “Python 淡化了静态语言中‘声明与定义分离’的严格区分,强化了‘对象创建与名称绑定’的核心逻辑” 原因: C 中 “定义” 是 “分配内存 + 绑定类型”,“声明” 是 “告知存在”;Python 无此二分法,但并非完全没有 “定义” 的口语场景(如 “定义函数” 阅读全文
posted @ 2025-11-16 10:25 wangya216 阅读(7) 评论(0) 推荐(0)
摘要: x = True # 全局名称x绑定布尔对象True print(locals()['x']) # 输出:True print(globals()['x']) # 输出:True 阅读全文
posted @ 2025-11-16 10:06 wangya216 阅读(5) 评论(0) 推荐(0)
摘要: 在 Python 错误信息 invalid literal for int() with base 10: 'abc' 中,涉及两个关键问题:base 10 的含义,以及程序如何知道错误输入是 'abc'。下面分别详细解释: 一、base 10 是什么意思? base 在这里表示“进制”,base 阅读全文
posted @ 2025-11-15 22:35 wangya216 阅读(42) 评论(0) 推荐(0)
摘要: Python 异常处理全面详解(附丰富实例) 异常是程序运行时出现的意外错误(如除数为零、文件不存在等),若不处理会导致程序崩溃。Python 提供了完善的异常处理机制,允许开发者捕获并处理这些错误,保证程序的健壮性。本文将从异常基础、处理流程、自定义异常、实战技巧四个维度,结合 30+ 实例详解 阅读全文
posted @ 2025-11-15 22:30 wangya216 阅读(240) 评论(0) 推荐(0)
摘要: Python 一维数据、二维数据及 CSV 文件操作全解析(附实例) 在数据处理中,一维数据和二维数据是最基础的数据结构。CSV(逗号分隔值)作为一种轻量级文件格式,是存储和交换这两类数据的常用载体。本文将系统讲解一维数据、二维数据的概念、表示方法,以及如何通过 Python 对 CSV 文件进行读 阅读全文
posted @ 2025-11-15 22:20 wangya216 阅读(65) 评论(0) 推荐(0)
摘要: Python 文件操作全面详解:从基础到进阶(附丰富实例) 文件操作是 Python 编程中最核心的技能之一,涵盖文件的创建、读写、关闭、删除、属性修改等场景。本文将系统梳理 Python 文件操作的核心概念、基础 API、进阶技巧和最佳实践,结合 20+ 个可直接运行的实例,从入门到精通掌握文件操 阅读全文
posted @ 2025-11-15 22:17 wangya216 阅读(242) 评论(0) 推荐(0)
摘要: Python 文件与目录操作全解析:核心库、用法与实例 Python 提供了多个用于文件/目录操作的标准库,涵盖路径处理、文件读写、目录遍历、权限管理等核心场景。本文将系统梳理 6 个核心库(os、os.path、pathlib、shutil、glob、fnmatch),从「功能定位、核心 API、 阅读全文
posted @ 2025-11-15 21:54 wangya216 阅读(60) 评论(0) 推荐(0)
摘要: 在 Python 中,字符串(str) 和 字节串(bytes) 是两种核心数据类型,分别对应“人类可读的字符”和“计算机可存储的字节”,二者通过编码(encode)和解码(decode)关联,是处理文本数据的基础。 一、核心定义与本质区别 类型 字符串(str) 字节串(bytes) 本质 Uni 阅读全文
posted @ 2025-11-14 09:11 wangya216 阅读(55) 评论(0) 推荐(0)
摘要: 核心结论:Unicode 不直接“包含” GB18030,但 GB18030 全面兼容 Unicode(覆盖其所有字符) ——二者是「字符集标准」与「编码实现」的关系,不存在直接的“包含”逻辑,而是通过“字符映射”实现全面覆盖。 一、关键概念区分(避免混淆) 先明确两个核心定义,再看关系: Unic 阅读全文
posted @ 2025-11-14 09:08 wangya216 阅读(44) 评论(0) 推荐(0)
摘要: 怎么理解UTF-8/16/32是Unicode的实现? 要理解“UTF-8/16/32是Unicode的实现”,需要先明确Unicode的本质与“实现”的含义。简单说:Unicode定义了“字符是什么”,而UTF系列定义了“如何存储和传输这些字符”——前者是抽象的字符集,后者是具体的编码方案,二者是 阅读全文
posted @ 2025-11-13 18:33 wangya216 阅读(20) 评论(0) 推荐(0)
摘要: 字符编码体系详解:从ASCII到UTF-8,从存储到打印,从字符串到字节串 一、字符编码的本质与演进动因 字符编码是计算机存储和传输文本的基础——它通过数值映射将人类可识别的字符转换为机器可处理的二进制数据。随着计算机从英语环境走向多语言场景,编码体系经历了从简单到复杂的演进: ASCII(1963 阅读全文
posted @ 2025-11-13 18:26 wangya216 阅读(22) 评论(0) 推荐(0)