自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(92)
  • 收藏
  • 关注

原创 AI开发-python-langchain框架(--提取pdf中的图片 )

print(f"当前Python版本 {sys.version_info.major}.{sys.version_info.minor} 符合要求。print(f"警告: 你的Python版本是 {sys.version_info.major}.{sys.version_info.minor}。print(f"\n模拟包信息定义 ({package_info['name']} v{package_info['version']}):")# setuptools.setup() 在实际中会在这里被调用。

2026-05-14 14:55:23 240

原创 InnoDB存储结构全解析:行页区段与单表W行的关系

如果你下意识地开始写一连串的if...else if...else,那么恭喜,你正在制造一颗名为“面条代码”的定时炸弹。重要区别:遍历数组,99%的情况用for...of或forEach方法更好。3. for...of (用于数组等可迭代对象) 和 for...in (用于对象属性):让你摆脱索引,直接拿到值。// 直接输出 'red', 'green', 'blue'。// 输出 'a' 1, 'b' 2。- else if:“如果...就...或者如果...就...否则...”(多岔路口);

2026-05-14 14:41:18 53

原创 袁永福 电子病历,医疗信息化

2.使用c命名空间注入属性,语法:c:属性名="属性值" c:属性名-ref="引用类型属性值"</p>// 获取spring容器中的对象。2.使用p命名空间注入属性,语法:p:属性名="属性值" p:属性名-ref="引用类型属性值"--><p> 如果key是简单类型,可以直接使用entry标签的key属性赋值

2026-05-14 14:34:14 125

原创 Nginx 学习总结

{"count":1,"elapsed":209,"elapsedAvg":209,"startAt":"2025-07-17 13:33:55.116","stopAt":"2025-07-17 13:33:55.325","success"僖胸芽凡。由于 Calico 官方文档中也有注明,first-found 模式为:使用第一个接口(不包括 Docker 网桥等本地接口)上的第一个有效 IP 地址,建议根据不同需求选择不同配置方式,本文采用的指定接口方式。## 默认使用此配置。## 等待很久后报错。

2026-05-14 14:27:49 289

原创 元器件详解——DSC

这里用的ChatPromptTemplate.from_template和上的ChatPromptTemplate.from_messages不同,区别在于前者比较简单,相当于后者直接用user字典的形式,后者from_messages有langchain框架提供的prompt模板。"你是一位高考作文专家。langchain中提供的chain链组件,能够帮助我门快速的实现各个组件的流水线式的调用,和模型的问答。"请给主题为 {topic} 的议论文写一个 总-递进-总 的简短大纲,一共分为5段。

2026-05-13 13:29:24 148

原创 做了一个网页天气可视化

尤其对于 2000 万行表,全表拷贝的 IO 开销成为性能瓶颈,72 万行小表测试耗时 203 秒的核心原因也在于此。MySQL 5.6 对原生数值类型(TINYINT/INT/BIGINT)+ 简单常量默认值(如 0)的 DDL 操作有轻量级优化:无默认值时需全表拷贝 + 逐行初始化字段值,而显式指定默认值后会优化为全表拷贝 + 批量赋值默认值,减少 60% 以上的 IO 开销,且该优化对数值类型的适配性远优于 VARCHAR 类型(BIGINT 比 VARCHAR 的执行效率更高、资源占用更低)。

2026-05-13 13:18:34 180

原创 基于 Vue + TS + Ant Design Vue 实现精细化菜单按钮权限授权组件

Workflows (项目级):存储在项目根目录的 .agent/workflows 中。Skills (全局库):实际的代码、脚本和指南,存储在系统级目录(如 ~/.gemini/antigravity/skills)。# 此时目录结构应为 ~/.gemini/antigravity/skills/ui-ux-pro-max-skill/...# 此时目录结构应为 ~/.gemini/antigravity/skills/skills/...节省空间:不需要在每个项目中重复下载几百 MB 的技能文件。

2026-05-13 13:07:52 194

原创 LeetCode 删除无效的括号:python 题解

Spring Boot 4.0 于 2025 年 11 月正式发布,基于 Spring Framework 7.0,全面支持 Java 25(含虚拟线程优化),是一个里程碑式的大版本更新。配置类迁移适配:针对 Spring Boot 4 中移动的配置类(如 Caching 、Thymeleaf 、WebMvc 、FreeMarker 和 Mustache )提供了全面的识别支持。除了新功能,本次 EAP 还包含了大量的 Bug 修复和性能优化,涵盖了从核心平台、UI、文件系统到各种语言的方方面面。

2026-05-13 12:58:06 192

原创 CodeMagicianT

13 年后,我用 fetch-event-source 订阅大模型的“思维流”,用 OCR 解锁图片中的文字——前端,正在成为 AI 产品的第一道体验防线。'Authorization': `Bearer ${getToken()}`, // 从 Pinia 或 localStorage 获取。关键设计:状态分为 'idle' | 'parsing' | 'success' | 'failed',对应四个 UI 区块,避免用户困惑。message.error('翻译服务异常,请稍后重试');

2026-05-13 12:47:43 166

原创 没考上和你一样的大学

在智能体生态中,这种灵活性是至关重要的,因为 AI 智能体需要一种能够像 Python 一样“丝滑”地生成并执行的代码格式,同时又希望保留 C# 在性能、并发处理和类型安全方面的工业级优势。传统的 C# 开发模式,即所谓的“工程导向型”开发,要求开发者创建一个复杂的项目结构,包括项目文件(.csproj)、解决方案文件(.sln)、属性设置以及依赖项配置。当智能体识别出需要进行复杂的财务审计计算时,它可以生成一个专门的 C# 脚本,将其作为一个临时工具加载,执行完毕后再行释放。通过在文件头添加 #!

2026-05-12 15:42:55 331

原创 OpenClaw 大结局——接入个人

设计时,要把依赖关系想清楚,比如认证应该放在靠“里”层(后添加),日志可以放在最“外”层(先添加)。划重点: 中间件函数接收一个 call_next,它就像接力棒,你必须调用它(await call_next(request)),请求才能继续往后走。再说个容易翻车的点。这里千万别学我当初偷懒,图省事直接上 `allow_origins=["*"]`,这在生产环境是安全大忌,相当于餐厅大门敞开,谁都能进。- 迎宾(CORS中间件):先看你是不是从允许的街区(域名)来的,不是就直接劝退(返回CORS错误)。

2026-05-12 15:03:48 314

原创 记一次综合型流量分析 | 添柴不加火

langchain专门用于构建LLM大语言模型,其中提供了大量的prompt模板,和组件,通过chain(链)的方式将流程连接起来,操作简单,开发便捷。response = chain.invoke({"topic": "Python", "concept": "列表"})response = chain.invoke({"topic": "Python", "concept": "列表"})这是模型需要直接回答或处理的问题。("system", "你是一个精通{topic}的资深技术专家。

2026-05-12 14:51:38 186

原创 Spring with AI (): 搜索扩展——向量数据库与RAG(下)

本文介绍的关键优化技巧包括:基于测量的针对性优化、内存管理最佳实践、高效的异步编程模式、合理的数据结构选择、数据库访问优化以及生产环境监控等。值得注意的是,性能优化应当遵循"先测量后优化"的原则,避免过早和过度的优化。同时,在追求性能提升的过程中,不应牺牲代码的可维护性和可读性。通过平衡各种因素,开发者可以构建出既高效又健壮的 .NET 应用程序,为用户提供流畅的使用体验,为企业创造更大的价值。最终,持续学习最新的 .NET 性能优化技术,结合实际应用场景进行实践和验证,是保持应用竞争力的关键。

2026-05-11 13:10:17 267

原创 推荐系统中 值的设计:从训练目标到推理信号

Free Spire.Doc for Python 是免费 Python 文档处理库,无需依赖 Microsoft Word,支持 Word 文档的创建、编辑、转换等操作,其中内置的 Markdown 解析能力,能高效实现 Markdown 到 Doc/Docx 格式的转换,且兼容常见的 Markdown 语法(标题、列表、图片、链接等)。这是一段普通段落,支持**粗体**、*斜体*、`行内代码`,以及[超链接](https://www.google.com/)。路径:{output_path}")

2026-05-11 12:18:22 179

原创 Oracle RMAN物理备份Web系统

这个要看资源的定义:如果只是管理内存资源,那么这样做是没有问题的,至少是安全的。而关于拷贝语义,绝大多数 C++ 程序员应该都知道这个问题:当在类对象中管理资源时,编译器生成的默认拷贝行为是“浅拷贝”,可能导致双重释放、内存泄漏等问题,因此需要自定义拷贝构造函数和拷贝赋值运算符来实现“深拷贝”的行为。首先要说明的是,要做的不是完整的封装 Hugging Face tokenizers 的 C 的 FFI(Foreign Function Interface)接口,而是封装自己需要的接口就可以了。

2026-05-11 12:03:31 375

原创 C++ vs .NET 数组原地反转实测:小数组 C++ 碾压,大数组 .NET 反杀?

其底层数据存储在对象存储中(S3、COS、OSS、ceph),在用户和对象存储层中加一个中间层,作为文件系统层,负责将文件系统与对象存储的操作进行翻译转换,从而实现POSIX兼容。在介绍之前,首先需要理清楚文件系统与对象存储的区别是什么,文件系统对接对象存储需要做哪些工作,之后才考虑性能的优化与可靠性的优化。对象存储的 FUSE 并不是完美的。操作接口:基于RESTful API(),主要操作是PUT(上传/覆盖),GET(下载),DELETE(删除),HEAD(获取元数据),不支持seek或部分写入。

2026-05-11 11:48:41 209

原创 我不是狐狸,我是那Harness Engineering

print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)

2026-05-11 11:34:40 301

原创 MyBatis-plus进阶之映射与条件构造器

printf("Q位状态:%s\n", is_q_flag_set()?"溢出(置1)" : "未溢出(置0)");优先使用 ARM GCC 内置函数(如__qadd),深入调试可通过汇编操作 Q 位,检测溢出需读取 APSR 的 Bit27;printf("32位饱和加法结果:%d(预期:2147483647)\n", res1);运算结果超出目标数据类型的数值范围(上限 / 下限) 时,结果被 “钳位” 到该类型的极值;

2026-05-10 14:34:24 239

原创 推荐系统中 值的设计:从训练目标到推理信号

System.out.println("订单技能已挂载,当前租户:" + prompt.attr("tenant_id"));然而,在以 Solon AI 为代表的现代应用开发框架中,AI Skills 已演化为一种更高维度的封装,用于智能体应用开发。异构生态: 不同语言、不同算力环境下的能力,都可以通过统一的 MCP 接口连接,形成一个真正的“智能体微服务网络”。安全边界: 敏感数据处理技能可以部署在专用的、受保护的内网环境中,仅通过受控的 MCP 协议与公网 Agent 通信。

2026-05-10 14:18:42 162

原创 Oracle RMAN物理备份Web系统

{"count":1,"elapsed":209,"elapsedAvg":209,"startAt":"2025-07-17 13:33:55.116","stopAt":"2025-07-17 13:33:55.325","success"子迪踊郧。由于 Calico 官方文档中也有注明,first-found 模式为:使用第一个接口(不包括 Docker 网桥等本地接口)上的第一个有效 IP 地址,建议根据不同需求选择不同配置方式,本文采用的指定接口方式。## 默认使用此配置。## 等待很久后报错。

2026-05-10 14:01:31 242

原创 C++ vs .NET 数组原地反转实测:小数组 C++ 碾压,大数组 .NET 反杀?

如果你下意识地开始写一连串的if...else if...else,那么恭喜,你正在制造一颗名为“面条代码”的定时炸弹。重要区别:遍历数组,99%的情况用for...of或forEach方法更好。3. for...of (用于数组等可迭代对象) 和 for...in (用于对象属性):让你摆脱索引,直接拿到值。// 直接输出 'red', 'green', 'blue'。// 输出 'a' 1, 'b' 2。- else if:“如果...就...或者如果...就...否则...”(多岔路口);

2026-05-10 13:47:20 160

原创 我不是狐狸,我是那Harness Engineering

本文介绍的关键优化技巧包括:基于测量的针对性优化、内存管理最佳实践、高效的异步编程模式、合理的数据结构选择、数据库访问优化以及生产环境监控等。值得注意的是,性能优化应当遵循"先测量后优化"的原则,避免过早和过度的优化。同时,在追求性能提升的过程中,不应牺牲代码的可维护性和可读性。通过平衡各种因素,开发者可以构建出既高效又健壮的 .NET 应用程序,为用户提供流畅的使用体验,为企业创造更大的价值。最终,持续学习最新的 .NET 性能优化技术,结合实际应用场景进行实践和验证,是保持应用竞争力的关键。

2026-05-10 13:31:48 208

原创 MyBatis-plus进阶之映射与条件构造器

项目内存 ./CLAUDE.md 或 ./.claude/CLAUDE.md 项目的团队共享说明 项目架构、编码标准、常见工作流 通过源代码控制的团队成员。项目规则 ./.claude/rules/*.md 模块化、特定主题的项目说明 特定于语言的指南、测试约定、API 标准 通过源代码控制的团队成员。项目内存(本地) ./CLAUDE.local.md 个人的项目特定偏好设置 您的沙箱 URL、首选测试数据 仅您(当前项目)

2026-05-09 16:26:00 204

原创 推荐系统中 值的设计:从训练目标到推理信号

Free Spire.Doc for Python 是免费 Python 文档处理库,无需依赖 Microsoft Word,支持 Word 文档的创建、编辑、转换等操作,其中内置的 Markdown 解析能力,能高效实现 Markdown 到 Doc/Docx 格式的转换,且兼容常见的 Markdown 语法(标题、列表、图片、链接等)。这是一段普通段落,支持**粗体**、*斜体*、`行内代码`,以及[超链接](https://www.google.com/)。路径:{output_path}")

2026-05-09 16:11:18 135

原创 Oracle RMAN物理备份Web系统

这个要看资源的定义:如果只是管理内存资源,那么这样做是没有问题的,至少是安全的。而关于拷贝语义,绝大多数 C++ 程序员应该都知道这个问题:当在类对象中管理资源时,编译器生成的默认拷贝行为是“浅拷贝”,可能导致双重释放、内存泄漏等问题,因此需要自定义拷贝构造函数和拷贝赋值运算符来实现“深拷贝”的行为。首先要说明的是,要做的不是完整的封装 Hugging Face tokenizers 的 C 的 FFI(Foreign Function Interface)接口,而是封装自己需要的接口就可以了。

2026-05-09 15:55:50 193

原创 C++ vs .NET 数组原地反转实测:小数组 C++ 碾压,大数组 .NET 反杀?

其底层数据存储在对象存储中(S3、COS、OSS、ceph),在用户和对象存储层中加一个中间层,作为文件系统层,负责将文件系统与对象存储的操作进行翻译转换,从而实现POSIX兼容。在介绍之前,首先需要理清楚文件系统与对象存储的区别是什么,文件系统对接对象存储需要做哪些工作,之后才考虑性能的优化与可靠性的优化。对象存储的 FUSE 并不是完美的。操作接口:基于RESTful API(),主要操作是PUT(上传/覆盖),GET(下载),DELETE(删除),HEAD(获取元数据),不支持seek或部分写入。

2026-05-09 15:41:09 237

原创 我不是狐狸,我是那Harness Engineering

print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)

2026-05-09 15:28:15 191

原创 Unsortedbin attack与Unlink

在智能体生态中,这种灵活性是至关重要的,因为 AI 智能体需要一种能够像 Python 一样“丝滑”地生成并执行的代码格式,同时又希望保留 C# 在性能、并发处理和类型安全方面的工业级优势。传统的 C# 开发模式,即所谓的“工程导向型”开发,要求开发者创建一个复杂的项目结构,包括项目文件(.csproj)、解决方案文件(.sln)、属性设置以及依赖项配置。当智能体识别出需要进行复杂的财务审计计算时,它可以生成一个专门的 C# 脚本,将其作为一个临时工具加载,执行完毕后再行释放。通过在文件头添加 #!

2026-05-08 18:25:10 155

原创 痞子衡嵌入式:turbo-spiboot - 一种基于MCUBoot协议的二级SPI加载APP提速方案

ax2.scatter(sales_2022, y_pos, s=120, color='#4C72B0', alpha=0.9, label='2022年', zorder=2, edgecolors='white', linewidth=2)进一步,我们还可以给哑铃图排序,按照增长由快到慢给各个品类排序,这样自然形成从"下降最显著"到"增长最显著"的连续谱,模式自动显现,无需刻意寻找。这样改造后,由上到下的哑铃,越来越短(也就是增长越来越慢),最底部的那个是负增长,用了红色来标注。

2026-05-08 17:26:13 176

原创 痞子衡嵌入式:turbo-spiboot - 一种基于MCUBoot协议的二级SPI加载APP提速方案

ax2.scatter(sales_2022, y_pos, s=120, color='#4C72B0', alpha=0.9, label='2022年', zorder=2, edgecolors='white', linewidth=2)进一步,我们还可以给哑铃图排序,按照增长由快到慢给各个品类排序,这样自然形成从"下降最显著"到"增长最显著"的连续谱,模式自动显现,无需刻意寻找。这样改造后,由上到下的哑铃,越来越短(也就是增长越来越慢),最底部的那个是负增长,用了红色来标注。

2026-05-08 15:45:23 331

原创 我不是狐狸,我是那Harness Engineering

print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)

2026-05-08 15:17:19 285

原创 LongWayToGo

当数据值超过一层时,就用更深的颜色或不同的颜色填充。流图通过中心布局,减少了这种扭曲,非常适合展示随时间变化的趋势和不同类别权重的波动,这种有机的形态还能给读者带来极强的审美愉悦感。如果把传统的堆叠面积图想象成一块块整齐堆叠的积木,那么流图就像一条蜿蜒流淌的河流,河道的宽窄变化自然流畅,波峰波谷过渡平滑。流图解决了一个视觉错觉问题:在普通堆叠面积图中,上面的数据层会因为下面数据层的起伏而被迫“扭曲”,很难看出它原本的形状。# ============ 地平线图:股价波动对比 ============

2026-05-07 15:51:57 128

原创 Unsortedbin attack与Unlink

在智能体生态中,这种灵活性是至关重要的,因为 AI 智能体需要一种能够像 Python 一样“丝滑”地生成并执行的代码格式,同时又希望保留 C# 在性能、并发处理和类型安全方面的工业级优势。传统的 C# 开发模式,即所谓的“工程导向型”开发,要求开发者创建一个复杂的项目结构,包括项目文件(.csproj)、解决方案文件(.sln)、属性设置以及依赖项配置。当智能体识别出需要进行复杂的财务审计计算时,它可以生成一个专门的 C# 脚本,将其作为一个临时工具加载,执行完毕后再行释放。通过在文件头添加 #!

2026-05-07 15:18:06 164

原创 C++资源控制哲学:从push_back与emplace_back看左值右值

尤其对于 2000 万行表,全表拷贝的 IO 开销成为性能瓶颈,72 万行小表测试耗时 203 秒的核心原因也在于此。MySQL 5.6 对原生数值类型(TINYINT/INT/BIGINT)+ 简单常量默认值(如 0)的 DDL 操作有轻量级优化:无默认值时需全表拷贝 + 逐行初始化字段值,而显式指定默认值后会优化为全表拷贝 + 批量赋值默认值,减少 60% 以上的 IO 开销,且该优化对数值类型的适配性远优于 VARCHAR 类型(BIGINT 比 VARCHAR 的执行效率更高、资源占用更低)。

2026-05-07 14:50:14 224

原创 痞子衡嵌入式:turbo-spiboot - 一种基于MCUBoot协议的二级SPI加载APP提速方案

ax2.scatter(sales_2022, y_pos, s=120, color='#4C72B0', alpha=0.9, label='2022年', zorder=2, edgecolors='white', linewidth=2)进一步,我们还可以给哑铃图排序,按照增长由快到慢给各个品类排序,这样自然形成从"下降最显著"到"增长最显著"的连续谱,模式自动显现,无需刻意寻找。这样改造后,由上到下的哑铃,越来越短(也就是增长越来越慢),最底部的那个是负增长,用了红色来标注。

2026-05-07 14:22:31 218

原创 我不是狐狸,我是那Harness Engineering

print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("工具调用:" + func_name + ",参数:" + str(func_args) + ",结果:" + tool_output)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)print("="*20+"\n第"+str(i+1)+"轮\n"+query+"\n"+"="*20)

2026-05-07 13:54:24 186

原创 LongWayToGo

当数据值超过一层时,就用更深的颜色或不同的颜色填充。流图通过中心布局,减少了这种扭曲,非常适合展示随时间变化的趋势和不同类别权重的波动,这种有机的形态还能给读者带来极强的审美愉悦感。如果把传统的堆叠面积图想象成一块块整齐堆叠的积木,那么流图就像一条蜿蜒流淌的河流,河道的宽窄变化自然流畅,波峰波谷过渡平滑。流图解决了一个视觉错觉问题:在普通堆叠面积图中,上面的数据层会因为下面数据层的起伏而被迫“扭曲”,很难看出它原本的形状。# ============ 地平线图:股价波动对比 ============

2026-05-06 16:09:01 164

原创 Unsortedbin attack与Unlink

在智能体生态中,这种灵活性是至关重要的,因为 AI 智能体需要一种能够像 Python 一样“丝滑”地生成并执行的代码格式,同时又希望保留 C# 在性能、并发处理和类型安全方面的工业级优势。传统的 C# 开发模式,即所谓的“工程导向型”开发,要求开发者创建一个复杂的项目结构,包括项目文件(.csproj)、解决方案文件(.sln)、属性设置以及依赖项配置。当智能体识别出需要进行复杂的财务审计计算时,它可以生成一个专门的 C# 脚本,将其作为一个临时工具加载,执行完毕后再行释放。通过在文件头添加 #!

2026-05-06 15:31:55 141

原创 C++资源控制哲学:从push_back与emplace_back看左值右值

尤其对于 2000 万行表,全表拷贝的 IO 开销成为性能瓶颈,72 万行小表测试耗时 203 秒的核心原因也在于此。MySQL 5.6 对原生数值类型(TINYINT/INT/BIGINT)+ 简单常量默认值(如 0)的 DDL 操作有轻量级优化:无默认值时需全表拷贝 + 逐行初始化字段值,而显式指定默认值后会优化为全表拷贝 + 批量赋值默认值,减少 60% 以上的 IO 开销,且该优化对数值类型的适配性远优于 VARCHAR 类型(BIGINT 比 VARCHAR 的执行效率更高、资源占用更低)。

2026-05-06 14:50:44 148

原创 痞子衡嵌入式:turbo-spiboot - 一种基于MCUBoot协议的二级SPI加载APP提速方案

ax2.scatter(sales_2022, y_pos, s=120, color='#4C72B0', alpha=0.9, label='2022年', zorder=2, edgecolors='white', linewidth=2)进一步,我们还可以给哑铃图排序,按照增长由快到慢给各个品类排序,这样自然形成从"下降最显著"到"增长最显著"的连续谱,模式自动显现,无需刻意寻找。这样改造后,由上到下的哑铃,越来越短(也就是增长越来越慢),最底部的那个是负增长,用了红色来标注。

2026-05-06 14:07:15 142

空空如也

空空如也

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

TA关注的人

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