当前位置: 首页 > news >正文

VIM学习笔记

1. ex模式

vim中,按:触发的命令行模式,称为 ex模式,具体命令参见如下笔记:

https://blog.csdn.net/u010250151/article/details/51868751?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522814b671a9898c954642607c9f589f1e9%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=814b671a9898c954642607c9f589f1e9&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-2-51868751-null-null.142^v102^pc_search_result_base4&utm_term=vim%20%20Ex%20%E5%91%BD%E4%BB%A4&spm=1018.2226.3001.4187文章浏览阅读816次。本文出自 http://blog.csdn.net/shuangde800本文是在学习《使用vi编辑器, Lamb & Robbins编著》时在evernote写的其中一章笔记,现在整理好,一方面温故而知新,一方面希望对大家能有些帮助。ex的命令在vim编程中都是非常常用的,熟练这些命令对于提高编程效率有很大的帮助。主要内容:_vim ex命令 https://blog.csdn.net/u010250151/article/details/51868751?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522814b671a9898c954642607c9f589f1e9%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=814b671a9898c954642607c9f589f1e9&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-2-51868751-null-null.142^v102^pc_search_result_base4&utm_term=vim%20%20Ex%20%E5%91%BD%E4%BB%A4&spm=1018.2226.3001.4187

2. ex命令格式

行号 命令

组成。如:

2 p 表示打印出第二行(显示到命令行上方)

2,20 d 表示删除第二行到第20行

3. 默认行号

ex命令中,没有给到行号,则默认是当前行

如:

d

表示删除当前行

4. ex常见命令

d 删除 :10 d 表示删除第10行

m 移动 :10, 20 m 25 表示把10到20行移动到25行之后

t 复制 :10, 20 t $ 表示把10到20行移动到文末

5. ex行号

没有给出行号,则是默认行号

$ 表示文末

% 表示全文

6. vim搜索

:\word 

输入:\字符串,搜索相应的字符,检索出结果后,通过按键n向下,N向上来查找下一个或者上一个,注意:\是向后搜索,如果只有当前行前面有匹配,会提示没有找到,需要按n来继续找到下一个

7. vim替换

:[范围]s/目标模式/替换内容/[标志]

在ex命令下,使用s命令,标志有:

常用标志​​:

  • g:替换行内所有匹配项(不加则仅替换第一个)。
  • c:每次替换前确认(Confirm)。
  • i:忽略大小写(:set ignorecase 可全局设置)。
  • I:区分大小写(覆盖全局设置)。
范围​示例说明
​当前行​:s/old/new/g替换当前行所有 old 为 new
​全文​:%s/old/new/g替换整个文件
​行号区间​:10,20s/old/new/g替换第 10 到 20 行
​可视模式​选中文本后 :'<,'>s/old/new/g替换选中区域
​相对行号​:.,+5s/old/new/g从当前行到后 5 行

8. vim的寄存器

所谓的寄存器是指vim编辑时,复制的内容,或者曾经执行过的命令。

vim 有10个数字寄存器,存放着最近10次拷贝的内容,使用的格式为:

"1

如:粘贴第3个寄存器中的内容到当前行,则使用如下命令:

"3p

可以通过reg命令查看各个寄存器中的内容。

具体的寄存器名称及作用如下:

寄存器名用途
""(无名)默认寄存器,直接使用 y(复制)、d(剪切)、p(粘贴)时会用到。
"0-9"数字寄存器,0 存储最近一次复制的内容,1-9 存储历史删除/剪切内容。
"a-"z"命名寄存器,可手动指定存储内容(如 "ayy 复制当前行到寄存器 a)。
"+ 和 "*"系统剪贴板寄存器(Linux 中 "+ 对应 Ctrl+C/Ctrl+V"* 对应鼠标中键)。
":存储最近执行的命令(如 :echo "hello" 后,":p 会粘贴这个命令)。

注意:+的特殊性,这个+寄存器其实是,系统复制的内容地址,要想打通系统和vim将的复制,必须使用这个+寄存器,具体命令如下:

复制内容到系统(等一下可以使用ctrl+v粘贴到不是vim的地方)

"+y

注意:不要少了引号

粘贴系统内容到vim

"+p

同样注意,不要少了双引号

9. vim-gtk

如果命令,"+p无法起作用,那么,应该是装的vim的版本不对,需要按照vim-gtk版本,而不是vim

附录:常见的 Ex 命令分类及示例


​一、基础操作命令​

命令功能示例
:q退出 Vim:q
:q!强制退出(不保存修改):q!
:w保存文件:w
:wq保存并退出:wq
:e <文件路径>打开新文件:e ~/new.txt
:e!重新加载当前文件(放弃修改):e!

​二、文本编辑命令​

命令功能示例
:s/old/new/替换当前行第一个 old 为 new:s/foo/bar/
:s/old/new/g替换当前行所有 old 为 new:s/foo/bar/g
:%s/old/new/g全文替换 old 为 new:%s/foo/bar/g
:m <行号>移动当前行到指定行:m 5(将当前行移到第 5 行后)
:t <行号>复制当前行到指定行:t 3(复制当前行到第 3 行后)
:d删除当前行:d
:d <范围>删除指定范围的行:3,5d(删除 3-5 行)

​三、范围操作与全局命令​

命令功能示例
:1,10s/old/new/g替换 1-10 行的 old 为 new:1,10s/foo/bar/g
:g/pattern/命令对匹配 pattern 的行执行命令:g/error/d(删除所有含 error 的行)
:v/pattern/命令对不匹配 pattern 的行执行命令:v/error/d(删除所有不含 error 的行)
:norm 命令在指定范围执行普通模式命令:%norm A;(所有行末尾添加 ;

​四、缓冲区与窗口管理​

命令功能示例
:ls列出所有缓冲区:ls
:b <编号/名称>切换到指定缓冲区:b2(切换到缓冲区 2)
:bd删除当前缓冲区:bd
:sp <文件名>水平分割窗口并打开文件:sp new.txt
:vsp <文件名>垂直分割窗口并打开文件:vsp new.txt

​五、设置与配置​

命令功能示例
:set <选项>临时设置选项:set number(显示行号)
:set <选项>=值设置选项值:set tabstop=4(Tab 显示为 4 空格)
:syntax on/off启用/禁用语法高亮:syntax on
:colorscheme <主题>切换颜色主题:colorscheme desert

​六、执行外部命令​

命令功能示例
:! <系统命令>执行 Shell 命令:! ls -l
:r !<系统命令>将命令输出插入当前光标位置:r !date(插入当前日期)
:w !sudo tee %以 sudo 权限保存文件(用于无写权限时的强制保存)

​七、参数列表与文件批量操作​

命令功能示例
:args <文件列表>设置参数列表(多文件操作):args *.txt
:argdo <命令>对所有参数列表中的文件执行命令`:argdo %s/foo/bar/g

​八、宏与脚本​

命令功能示例
:@<寄存器>执行寄存器中的宏:@a(执行寄存器 a 的宏)
:source <文件>加载并执行 Vim 脚本:source ~/.vimrc

​九、帮助与调试​

命令功能示例
:help <主题>查看帮助文档:help :s(查看替换命令帮助)
:messages查看 Vim 的消息历史:messages

​总结​

  • ​Ex 模式的核心逻辑​​:通过范围(行号、模式匹配)和命令组合,实现精准的文本操作。
  • ​高效操作技巧​​:
    • 结合正则表达式(如 :%s/\v(\d+)/\1/g 使用“非常魔法模式”)。
    • 使用 :g 和 :v 全局过滤行。
    • 利用 :argdo 或 :bufdo 批量处理文件/缓冲区。

相关文章:

VIM学习笔记

1. ex模式 vim中&#xff0c;按&#xff1a;触发的命令行模式&#xff0c;称为 ex模式&#xff0c;具体命令参见如下笔记&#xff1a; https://blog.csdn.net/u010250151/article/details/51868751?ops_request_misc%257B%2522request%255Fid%2522%253A%2522814b671a9898c95…...

Windows系统docker desktop安装(学习记录)

目前在学习docker&#xff0c;在网上扒了很多老师的教程&#xff0c;终于装好了&#xff0c;于是决定再装一遍做个记录&#xff0c;省的以后再这么麻烦 一&#xff1a;什么是docker Docker 是一个开源的应用容器引擎&#xff0c;它可以让开发者打包他们的应用以及依赖包到一个…...

操作系统学习笔记——[特殊字符]超详细 | 如何唤醒被阻塞的 socket 线程?线程阻塞原理、线程池、fork/vfork彻底讲明白!

&#x1f4a1;超详细 | 如何唤醒被阻塞的 socket 线程&#xff1f;线程阻塞原理、线程池、fork/vfork彻底讲明白&#xff01; 一、什么是阻塞&#xff1f;为什么线程会阻塞&#xff1f;二、socket线程被阻塞的典型场景&#x1f9e0; 解法思路&#xff1a; 三、线程的几种阻塞状…...

GIC驱动程序对中断的处理流程

承接上一篇&#xff0c;我们来讲讲GIC的处理流程&#xff1a; 我们先来看看老版本的CPU是怎么去处理中断的&#xff1a; 这种的话&#xff0c;基本上就是一开始就确定你有多少个中断&#xff0c;就为你分配好了多少个irq_desc&#xff0c;这样子每一个硬件中断&#xff0c;也就…...

罗庚机器人:机器人打磨领域的先行者

近日&#xff0c;记者在广东罗庚机器人有限公司&#xff08;以下简称罗庚机器人&#xff09;总经理蒲小平处了解到&#xff0c;该公司是一家研发与为客户提供高精度自适应机器人打磨抛光集成工艺的高科技企业&#xff0c;是机器人打磨领域的先行者。在国内外机器人打磨抛光应用…...

如何在 Java 中对 PDF 文件进行数字签名(教程)

Java 本身并不原生支持 PDF 文件&#xff0c;因此若要对 PDF 进行数字签名&#xff0c;您需要使用一些专用的软件。本教程将演示如何使用 JPedal PDF 库来对 PDF 文件进行数字签名。 步骤&#xff1a; • 下载 JPedal 并将 Jar 文件添加到项目中 • 创建一个 PKCS#12 密…...

一文了解:北斗短报文终端是什么,有哪些应用场景?

在通信技术飞速发展的今天&#xff0c;人们已习惯于依赖地面基站和互联网实现即时通信。然而&#xff0c;当自然灾害突发、远洋航行遇险或深入无人区勘探时&#xff0c;传统通信手段往往失效。北斗短报文终端——这一由中国自主研发的卫星通信技术&#xff0c;正以“无网络通信…...

【KWDB创作者计划】_KWDB应用之实战案例

【KWDB 2025 创作者计划】_KWDB应用之实战案例 本文是在完成KWDB数据库安装的情况下的操作篇&#xff0c;关于KWDB的介绍与安装部署&#xff0c;可以查看上一篇博客: https://blog.itpub.net/70045384/viewspace-3081187/ https://blog.csdn.net/m0_38139250/article/details/…...

JavaScript中的运算符与语句:深入理解编程的基础构建块

# JavaScript中的运算符与语句&#xff1a;深入理解编程的基础构建块 在JavaScript编程的世界里&#xff0c;运算符和语句就像是构建大厦的基石&#xff0c;它们是编写高效、灵活代码的基础。今天&#xff0c;我们就来深入了解一下这些重要的元素。 ## 一、运算符&#xff1a;…...

MySQL——学习InnoDB(1)

MySQL——学习InnoDB&#xff08;1&#xff09; 文章目录 MySQL——学习InnoDB&#xff08;1&#xff09;1. InnoDB的前世今生1.1 诞生发展1.2 核心设计1.3 关键进化 2. InnoDB和MyISAM在性能和安全上的区别2.1 性能对比2.2 安全对比 3. InnoDB架构图&#xff08;内存结构磁盘结…...

QT中多线程写法

转自个人博客&#xff1a;QT中多线程写法 1. QThread及moveToThread() 使用情况&#xff1a; 多使用于需要将有着复杂逻辑或需要一直占用并运行的类放入子线程中执行的情况&#xff0c;moveToThread是将整个类的对象移入子线程。 优缺点&#xff1a; 优点&#xff1a;更符合…...

css 二维码始终显示在按钮的正下方,并且根据不同的屏幕分辨率自动调整位置

一、需求 “求职入口” 下面的浮窗位置在其正下方&#xff0c;并且浏览器分辨的改变&#xff08;拖动浏览器&#xff09;&#xff0c;位置依旧在最下方 二、实现 <div class"btn_box"><div class"btn_link id"js-apply">求职入口<di…...

STM32 认识STM32

目录 什么是嵌入式&#xff1f; 认识STM32单片机 开发环境安装 安装开发环境 开发板资源介绍 单片机开发模式 创建工程的方式 烧录STM32程序 什么是嵌入式&#xff1f; 1.智能手环项目 主要功能有&#xff1a; 彩色触摸屏 显示时间 健康信息&#xff1a;心率&#…...

关于 CSDN的C知道功能模块 的详细解析,包括 新增的AI搜索(可选深度思考) 和 智能体功能 的具体说明及对比分析

以下是关于 CSDN的C知道功能模块 的详细解析&#xff0c;包括 新增的AI搜索&#xff08;可选深度思考&#xff09; 和 智能体功能 的具体说明及对比分析&#xff1a; 一、C知道核心功能模块详解&#xff08;基础功能&#xff09; &#xff08;参考前文内容&#xff0c;此处略…...

Vue--组件练习案例

图片轮播案例&#xff1a; <!DOCTYPE html><html lang"en"><head><meta charset"UTF-8"><title>Title</title></head><body><!--轮播图片--><div id"app"><h1>轮播图</h1…...

Sentinel源码—1.使用演示和简介一

大纲 1.Sentinel流量治理框架简介 2.Sentinel源码编译及Demo演示 3.Dashboard功能介绍 4.流控规则使用演示 5.熔断规则使用演示 6.热点规则使用演示 7.授权规则使用演示 8.系统规则使用演示 9.集群流控使用演示 1.Sentinel流量治理框架简介 (1)与Sentinel相关的问题 …...

空间信息可视化——WebGIS前端实例(二)

技术栈&#xff1a;原生HTML 源代码&#xff1a;CUGLin/WebGIS: This is a project of Spatial information visualization 5 水质情况实时监测预警系统 5.1 系统设计思想 水安全是涉及国家长治久安的大事。多年来&#xff0c;为相应国家战略&#xff0c;诸多地理信息领域的…...

高并发内存池(前言介绍)

高并发内存池项目介绍 1.项目介绍2.项目的知识储备要求3.了解池化技术及内存池4.本次项目中内存池解决的问题5.malloc 1.项目介绍 此项目是实现一个高并发的内存池&#xff0c;它的原型是google的一个开源项目tcmalloc&#xff0c;tcmalloc全程Thread-Caching Malloc&#xff…...

误译、值对象和DDD伪创新-《分析模式》漫谈56

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 “Analysis Patterns”的第14章“类型模型设计模板模式”原文&#xff1a; Examples of such object types are the classic built-in data types of programming environments: inte…...

Java单例模式:实现全局唯一对象的艺术

精心整理了最新的面试资料和简历模板&#xff0c;有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 一、什么是单例模式&#xff1f; 单例模式&#xff08;Singleton Pattern&#xff09;是一种创建型设计模式&#xff0c;确保一个类只有一个实例&#xff0c…...

机器学习项目二:帕金森病检测

目录 下载数据 一、导入相关包 二、数据加载 三、特征工程 四、构建模型 五、评估与可视化 六、程序流程 七、完整代码 一、导入相关包 # 导入库部分 import numpy as np # 数值计算基础库 import pandas as pd # 数据处理库 from sklearn.preprocessing import MinMaxS…...

FreeDogs:AI、区块链与迷因文化的深度融合

引言 在 Web3 时代&#xff0c;人工智能&#xff08;AI&#xff09;、区块链技术和迷因文化的结合催生了一种全新的去中心化生态系统。FreeDogs 项目作为这一领域的创新代表&#xff0c;通过独特的技术与文化融合模式迅速受到关注。它利用 AI 驱动的智能营销网络推动迷因文化的…...

《组合优于继承:构建高内聚低耦合模块的最佳实践》

《组合优于继承:构建高内聚低耦合模块的最佳实践》 一、引言:编程范式中的选择 在软件设计中,继承和组合是两个重要的设计模式。继承(Inheritance)常被用来实现代码复用,但滥用继承容易导致脆弱的类层次结构,增加耦合度和维护成本。而组合(Composition)通过将功能分解…...

机器学习02——RNN

一、RNN的基本概念 定义 循环神经网络&#xff08;Recurrent Neural Network&#xff0c;RNN&#xff09;是一种用于处理序列数据的神经网络架构。它与传统的前馈神经网络&#xff08;如多层感知机&#xff09;不同&#xff0c;RNN具有“记忆”功能&#xff0c;能够利用前一时…...

Java基础——面试自我总结

1、String类中常用方法和equals区别 答&#xff1a;对于和equals这两个都是用来比较判断是否相等&#xff0c;其中用来判断两个变量的值是否相等&#xff0c;变量的值的类型分为基本数据类型和引用数据类型。对于&#xff0c;基本数据类型是直接进行值比较&#xff0c;而对于引…...

低功耗设计:Level Shift的种类(以SAED EDK 32/28nm工艺库为例)

在多电压设计中&#xff0c;当信号从一个电压域跨越到另一个电压域时&#xff0c;需要使用电压转换器(Level Shift)。它的工作方式类似于缓冲器&#xff0c;但其输入和输出使用不同的电压&#xff0c;作用是将一个逻辑信号从一个电压转换为另一个电压&#xff0c;并在输入到输出…...

UE5 Chaos :渲染网格体 (Render Mesh) 和模拟网格体 是如何关联的?为什么模拟网格体 可以驱动渲染网格体?

官方文献&#xff1a;https://dev.epicgames.com/community/learning/tutorials/pv7x/unreal-engine-panel-cloth-editor 这背后的核心是一种常见的计算机图形学技术&#xff0c;通常称为代理绑定 (Proxy Binding) 或 表面变形传递 (Surface Deformation Transfer)。 关联机制…...

Fiddler为什么可以看到一次HTTP请求数据?

1、作为代理服务器 Fiddler作为代理服务器&#xff0c;拦截了设备与互联网服务器之间的所有HTTP和HTTPS流量。当客户端&#xff08;如浏览器&#xff09;发送请求时&#xff0c;请求先到达Fiddler&#xff0c;然后由Fiddler转发到目标服务器&#xff1b;服务器的响应也会返回给…...

RAG(Retrieval-Augmented Generation)召回算法是检索增强生成模型中的关键组件

RAG&#xff08;Retrieval-Augmented Generation&#xff09;召回算法是检索增强生成模型中的关键组件&#xff0c;其核心目标是从大规模文档库中高效检索与输入查询相关的信息&#xff0c;以辅助生成模型产生更准确的回答。以下是该算法的关键点解析&#xff1a; ### 1. **核…...

[NOIP 2003 普及组] 栈 Java

import java.io.*;public class Main {public static void main(String[] args) throws IOException {BufferedReader br new BufferedReader(new InputStreamReader(System.in));int n Integer.parseInt(br.readLine());int[] dp new int[n 1];dp[0] 1; // 空序列只有一种…...

5.5 GitHub数据秒级分析核心揭秘:三层提示工程架构设计解析

GitHub Sentinel Agent 分析报告功能设计与实现 关键词:GitHub 数据分析, 提示工程设计, Pull Request 分析, Issues 跟踪, 竞品对比 项目进展报告生成功能设计 报告生成模块是 GitHub Sentinel 的核心功能,通过三层嵌套式提示工程架构实现深度分析: #mermaid-svg-vdHRUan…...

PE文件(十五)绑定导入表

我们在分析Windows自带的一些程序时&#xff0c;常常发现有的程序&#xff0c;如notepad&#xff0c;他的IAT表在文件加载内存前已经完成绑定&#xff0c;存储了函数的地址。这样做可以使得程序是无需修改IAT表而直接启动&#xff0c;这时程序启动速度变快。但这种方式只适用于…...

如何快速部署基于Docker 的 OBDIAG 开发环境

很多开发者对 OceanBase的 SIG社区小组很有兴趣&#xff0c;但如何将OceanBase的各类工具部署在开发环境&#xff0c;对于不少开发者而言都是比较蛮烦的事情。例如&#xff0c;像OBDIAG&#xff0c;其在WINDOWS系统上配置较繁琐&#xff0c;需要单独搭建C开发环境。此外&#x…...

Multimodal-CoT与MCP的融合医疗AI编程路线探析

引言 在医疗AI领域,多模态数据融合与模块化系统设计是提升诊断精度和临床实用性的关键。Multimodal Chain-of-Thought(Multimodal-CoT)通过构建多源数据的推理链增强决策透明度,而Model Context Protocol(MCP)作为标准化接口协议,为AI系统提供灵活的数据源集成能力。两…...

基于单片机的智能养生油炸炉系统设计与实现

标题:基于单片机的智能养生油炸炉系统设计与实现 内容:1.摘要 本文针对传统油炸炉功能单一、无法满足现代养生需求的问题&#xff0c;设计并实现了基于单片机的智能养生油炸炉系统。通过采用STC89C52单片机作为控制核心&#xff0c;结合温度传感器、液位传感器、继电器等硬件&…...

MySQL流程控制

一&#xff1a;介绍 在 MySQL 中&#xff0c;流程控制语句用于控制存储过程和自定义函数中的程序流程。主要的流程控制语句包括&#xff1a;IF 语句、CASE 语句、LOOP 语句、LEAVE 语句、ITERATE 语句、REPEAT 语句和 WHILE 语句 &#xff08;1&#xff09;&#xff1a;if条件…...

在思科模拟器show IP route 发现Gateway of last resort is not set没有设置最后的通道

如果在show ip route的时候出现没有设置最后的通道Gateway of last resort is not set Switch#show ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGPD - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter areaN1 - OSPF NSSA exte…...

Java雪花算法

以下是用Java实现的雪花算法代码示例&#xff0c;包含详细注释和异常处理&#xff1a; 代码下面有解析 public class SnowflakeIdGenerator {// 起始时间戳&#xff08;2020-01-01 00:00:00&#xff09;private static final long START_TIMESTAMP 1577836800000L;// 各部分…...

【中大厂面试题】TCP 校招 java 后端最新面试题

TCL&#xff08;一面&#xff09; 1. Spring 初始化Bean前要做什么&#xff1f;有几种方式 在 Spring 容器调用 Bean 的初始化方法&#xff08;如 init-method、PostConstruct 等&#xff09;之前&#xff0c;会按顺序完成以下关键步骤&#xff1a;实例化 → 属性注入 → Aw…...

【教学类-102-11】蝴蝶外轮廓01——Python对黑白图片进行PS填充三种颜色+图案描边+图案填充白色+制作1图2图6图24图

背景需求: 用Python,对白色255背景的图片进行了透明化、制作点状或线段的描边裁剪线 【教学类-102-10】剪纸图案全套代码09——Python线条虚线优化版04(原图放大白背景)+制作1图2图6图24图-CSDN博客文章浏览阅读1k次,点赞27次,收藏8次。【教学类-102-10】剪纸图案全套代…...

【数据库系统概论】第3章 SQL(四)视图(超详细)

视图&#xff08;View&#xff09;是数据库中的虚拟表 通过执行查询定义并存储在数据库中&#xff0c;可以像普通表一样被查询和使用。 视图本身并不存储数据&#xff0c;而是基于一个或多个表的查询结果动态生成。 视图的概念 视图( View )是由其它表或视图上的查询所定义…...

HTTP:六.HTTP代理相关介绍

什么是HTTP代理 代理是指获授权代表他人执行操作的人员,代理服务器在在线世界中提供此操作。 代理服务器 充当用户和互联网之间的网关,并防止访问网络以外的任何人。通过 Web 浏览器定期访问互联网,使用户能够直接与网站连接。但是代理充当中间人,代表用户与网页通信。 当…...

【Python爬虫】详细工作流程以及组成部分

目录 一、Python爬虫的详细工作流程 确定起始网页 发送 HTTP 请求 解析 HTML 处理数据 跟踪链接 递归抓取 存储数据 二、Python爬虫的组成部分 请求模块 解析模块 数据处理模块 存储模块 调度模块 反爬虫处理模块 一、Python爬虫的详细工作流程 在进行网络爬虫工…...

深入解析UML图:版本演变、静态图与动态图详解

目录 前言1 UML的版本演变1.1 UML 1.x阶段&#xff1a;统一的开始1.2 UML 2.x阶段&#xff1a;功能的扩展与深化 2 UML图的分类概述3 UML静态图详解3.1 类图&#xff08;Class Diagram&#xff09;3.2 对象图&#xff08;Object Diagram&#xff09;3.3 组件图&#xff08;Comp…...

老旧测试用例生成平台异步任务与用户通知优化

在现代 Web 开发中&#xff0c;异步任务处理和用户通知是两个重要的功能。由于老旧测试平台【测试用例生成平台&#xff0c;源码分享】进行智能化升级后&#xff0c;未采用异步任务处理&#xff0c;大模型推理时间较长&#xff0c;导致任务阻塞&#xff0c;无法处理其他任务&am…...

数据结构初阶:队列

本篇博客主要讲解队列的相关知识。 目录 1.队列 1.1 概念与结构 1.2 队列头文件&#xff08;Queue.h&#xff09; 1.2.1 定义队列结点结构 1.2.2 定义队列的结构 1.3 队列源代码&#xff08;Queue.h&#xff09; 1.3.1 队列的初始化 1.3.2 队列的销毁 1.3.3 入队---队尾 1…...

苍穹外卖。12 数据统计

12.1 工作台 12.1.1 需求分析与设计 12.1.2 代码导入 12.1.3 测试 测试通过 12.2 Apache POI 12.2.1 需求分析与设计 12.2.2 案例 column表示索引行...

WebSocket 和 HTTP长轮询

一、HTTP长轮询&#xff08;Long Polling&#xff09; 1. 工作原理 传统轮询&#xff08;低效&#xff09;&#xff1a;客户端每隔几秒向服务器发一次请求&#xff0c;问“有新数据吗&#xff1f;”&#xff0c;即使服务器没有数据也会立即返回“无”。长轮询&#xff08;改进…...

高等数学同步测试卷 同济7版 试卷部分 上 做题记录 第三章微分中值定理与导数的应用同步测试卷 B 卷

第三章微分中值定理与导数的应用同步测试卷 B 卷 一、单项选择题(本大题共5小题,每小题3分,总计15分) 1. 2. 3. 4. 5. 二、填空题(本大题共5小题,每小题3分,总计15 分) 6. 7. 8. 9. 10. 三、求解下列各题(本大题共5小题,每小题6分,总计 3…...

生成式引擎优化(GEO)发展史与行业标准演变

一、生成式引擎优化&#xff08;GEO&#xff09;发展史与行业标准演变 随着 ChatGPT、Bard、Claude、文心一言等生成式AI搜索产品快速发展&#xff0c;GEO&#xff08;Generative Engine Optimization&#xff0c;生成式引擎优化&#xff09;也应运而生&#xff0c;成为继SEO、…...