python查找替换:查找空行,空行前后添加```,```中间添加 # + 空格 + 空行后遇到的第1行文字?

news2024/9/28 9:19:13

初始代码

查找空行

空行前后添加```
```中间添加 # 空行后遇到的第1行文字

txt =
```
3

6
9

6
1

5

9
8
7

2


```

可以使用Python的字符串处理函数来查找并修改文本中的空行。以下是一个示例代码,演示如何在文本中查找空行,并在每个空行前后添加````和一个注释:

# 原始文本
txt = '''3

6
9

6
1

5

9
8
7

2
'''

# 定义一个空白行的判断函数
def is_blank(line):
    return len(line.strip()) == 0

# 将文本按行拆分,并遍历每一行
lines = txt.splitlines()
for i in range(len(lines)):
    line = lines[i]

    # 如果当前行为空白行,则在前后添加```
    if is_blank(line):
        lines[i] = '\n```\n# 空白行\n```'

    # 否则,如果前一行是空白行,则在当前行之前添加```
    elif i > 0 and is_blank(lines[i-1]):
        lines[i] = '```\n' + line

    # 否则,如果后一行是空白行,则在当前行之后添加```
    elif i < len(lines)-1 and is_blank(lines[i+1]):
        lines[i] = line + '\n```\n# 空白行\n```'

# 将修改后的文本重新组合为一个字符串,并打印输出
modified_txt = '\n'.join(lines)
print(modified_txt)

此代码将遍历文本中的每一行,如果遇到空白行,则在空白行前后添加和一个注释。如果前一行或后一行是空白行,则在当前行之前或之后添加。
对于给定的输入文本,代码将输出以下结果:

在这里插入图片描述

调整代码

查找空行

空行前后添加```
```中间添加 # 空行后遇到的第1行文字

txt =
```
3

6
9

6
1

5

9
8
7

2


```

#  +空格+ 空行后遇到的第1行文字?

在这里插入图片描述

在这里插入图片描述

根据您的要求,将空行前后添加````,并在中间添加 # 和空行后遇到的第1行文字。以下是修改后的代码:

# 原始文本
txt = '''3

6
9

6
1

5

9
8
7

2
'''

# 定义一个空白行的判断函数
def is_blank(line):
    return len(line.strip()) == 0

# 将文本按行拆分,并遍历每一行
lines = txt.splitlines()
for i in range(len(lines)):
    line = lines[i]

    # 如果当前行为空白行,则在前后添加```
    if is_blank(line):
        lines[i] = '\n```\n# ' + lines[i+1] + '\n```'
        i += 1  # 跳过下一行,因为它已经被处理过了

# 将修改后的文本重新组合为一个字符串,并打印输出
modified_txt = '\n'.join(lines)
print(modified_txt)

此代码会查找空白行,如果遇到空白行,则在该行前后添加````和注释。在空行后的第一行添加 # 和空行后遇到的第1行文字。

6

3

6

6
9

1

# 5

9
8
7

# 2

请注意,此代码仅在给定的示例输入上进行了测试,并不保证可以处理所有可能的输入情况。你可能需要根据实际情况对代码进行微调。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1078251.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

销售活动管理必备工具——CRM系统软件

在企业业务中&#xff0c;销售活动是实现企业业绩目标的基本单元&#xff0c;起着奠基石的作用。CRM销售管理系统是销售活动管理的必备工具&#xff0c;帮助企业更好地开展销售活动。下面来说说CRM系统如何找到并输出关键销售活动&#xff1f; 在能顺利找到并输出关键销售活动…

选刊CFP | 中科院1区TOP,IF18.6,Elsevier出版社,仅3个月录用!

【SciencePub学术】 本期推荐 部分学者论文完成后&#xff0c;选刊上犯难&#xff0c;面对纷繁复杂的期刊信息及流程&#xff0c;很难有时间和精力一一调研查看&#xff0c;小编在也经常收到此类信息&#xff0c;希望我们帮助查询期刊信息。为此&#xff0c;小编开设此专栏【选…

leetcode:455. 分发饼干(python3解法)

难度&#xff1a;简单 假设你是一位很棒的家长&#xff0c;想要给你的孩子们一些小饼干。但是&#xff0c;每个孩子最多只能给一块饼干。 对每个孩子 i&#xff0c;都有一个胃口值 g[i]&#xff0c;这是能让孩子们满足胃口的饼干的最小尺寸&#xff1b;并且每块饼干 j&#xff…

超详细!主流大语言模型的技术原理细节汇总!

1.比较 LLaMA、ChatGLM、Falcon 等大语言模型的细节&#xff1a;tokenizer、位置编码、Layer Normalization、激活函数等。 2. 大语言模型的分布式训练技术&#xff1a;数据并行、张量模型并行、流水线并行、3D 并行、零冗余优化器 ZeRO、CPU 卸载技术 ZeRo-offload、混合精度训…

吃透底层:从路由到前缀树

前言 今天学到关于路由相关文章&#xff0c;发现动态路由中有一个很常见的实现方式是前缀树&#xff0c;很感兴趣这个算法&#xff0c;故进行记录。 前缀树 Trie&#xff08;又被叫做字典树&#xff09;可以看作是一个确定有限状态自动机&#xff0c;尽管边上的符号一般是隐含…

Prometheus和grafana安装配置手册

1.简介 本文档为prometheus和grafana安装配置手册&#xff0c;prometheus和grafana的内容、和操作过程&#xff0c;详细介绍了服务监控配置、dashboard配置、告警配置等操作。 2.部署说明 Prometheus基于Golang编写&#xff08;需要安装&#xff09;&#xff0c;编译后的软件…

433/315无线接收芯片XL710,适合各种低功耗要求的设备等

XL710是一款高集成度、低功耗的单片ASK/OOK射频接收芯片。高频信号接收功能全部集成于片内以达到用最少的外围器件和最低的成本获得最可靠的接收效果。因此它是真正意义.上的“无线高频调制信号输入&#xff0c;数字解调信号输出”的单片接收器件。 XL710为SOP8封装&#xff0…

Python 中最常用的 4种股票价格移动平均方法(二)

一、简介 在本文中&#xff0c;我们重点关注一些小众但值得注意的移动平均方法。这些利基工具通常来自专门研究或开发用于解决非常特殊的交易场景。虽然不太主流&#xff0c;但它们提供了对市场动态的极其细致入微的见解。完整列表如下&#xff1a; 第 1 部分 — 基本技术&…

大模型部署手记(11)LLaMa2+Chinese-LLaMA-Plus-2-7B+Windows+llama.cpp+中文对话

1.简介&#xff1a; 组织机构&#xff1a;Meta&#xff08;Facebook&#xff09; 代码仓&#xff1a;GitHub - facebookresearch/llama: Inference code for LLaMA models 模型&#xff1a;LIama-2-7b-hf、Chinese-LLaMA-Plus-2-7B 下载&#xff1a;使用huggingface.co和百…

微软放大招!Bing支持DALL-E3,免费AI绘画等你来体验!

最近 OpenAI 发布了DALL-E3模型&#xff0c;出图效果和Midjourney不相上下&#xff0c;不过要使用它有些门槛&#xff0c;必须是 ChatGPT Plus 账户&#xff0c;而且还要排队&#xff0c;怎么等都等不到&#xff0c;搞得大家都比较焦虑。 不过现在微软在Bing上也支持 DALL-E3 …

Excel恢复科学技术法显示的数据

Excel中输入位数较大的数据时&#xff0c;软件会自动使用科学计数法显示。很多时候并不需要这样的计数格式&#xff0c;所以需要把它转变为普通的数字格式 操作方法 选中单元格/列/行》右键》设置单元格式 在打开的窗口中&#xff0c;切换到“数字”选项卡&#xff0c;点击“自…

第四章 图表样式美化

第四章 图表样式美化 1.图表样式概述 1.1.默认图表样式 ​ matplotlib在绘图的过程中会读取存储在本地的配置文件matplotlibrc&#xff0c;通过matplotlibrc文件中的缺省配置信息指定图表元素的默认样式&#xff0c;完成图表元素样式的初始设置。 ​ matplotlib文件包含众多…

springboot单独在指定地方输出sql

一般线上项目都是将日志进行关闭&#xff0c;因为mybatis日志打印&#xff0c;时间长了&#xff0c;会占用大量的内存&#xff0c;如果我想在我指定的地方进行打印sql情况&#xff0c;怎么玩呢&#xff01; 下面这个场景&#xff1a; 某天线上的项目出bug了&#xff0c;日志打印…

Keil软件仿真的方法: μVision2调试器

目录 1. μVision2调试器2. 调试工具3. 单步调试4. 使用断点调试5. 使用监视窗口调试6. 调试按钮的功能1&#xff0e;“单步”按钮2&#xff0e;“跟踪”按钮3&#xff0e;“运行到退出”按钮4&#xff0e;“运行到光标行”按钮 参考资料 软件仿真是利用PC的CPU来模拟单片机的运…

鸿蒙API9手机号验证

鸿蒙API9手机号验证 做一个app用户认证&#xff0c;之前一直想着都是通过HMS Core里边来接入&#xff0c;但是里边的文档最高只支持到API7。 由于想直接用API9来接&#xff0c;毕竟感觉后续ts/java混合开发要被舍弃&#xff0c;尽量还是用新的来弄。看了一遍新的API9的文档&am…

The-MIFARE-Hack-1 -mifare技术

RFID卡的使用变得越来越普遍。 一般来说&#xff0c;使用两种类型的RFID卡&#xff1a;有源卡和无源卡。 主动系统有自己的能源&#xff0c;而被动系统则依赖读卡器提供的能量。 最常见的 RFID 卡之一是 MIFARE Classic&#xff0c;由 NXP Semiconductors&#xff08;以前是 Ph…

如何强化九小场所安全检查隐患排查工作

九小场所与人们的日常生活息息相关&#xff0c;相关部门对这些场所的消防安全非常重视&#xff1b;但是由于各种原因&#xff0c;经营者安全意识薄弱&#xff0c;导致存在严重的安全隐患。凡尔码开发的九小场所巡检系统针对九小场所基数大、底数不清、责任不明、主体意识薄弱等…

Python大数据之Python进阶(六)多线程的使用

文章目录 多线程的使用1. 导入线程模块2. 线程类Thread参数说明3. 启动线程4. 多线程完成多任务的代码5. 小结 线程执行带有参数的任务1. 线程执行带有参数的任务的介绍2. args参数的使用3. kwargs参数的使用4. 小结 线程的注意点1. 线程的注意点介绍2. 线程之间执行是无序的3.…

5.编写程序 超强力方法

5.1 创建战舰游戏 创建一个类似战舰的游戏&#xff1a;攻击网站 有一种棋盘类的战舰游戏&#xff0c;目标是要猜测对方战舰的坐标&#xff0c;然后轮流开炮攻击&#xff0c;命中数发就可以打沉对方的战舰。不过我们不喜欢战争&#xff0c;只要打垮这些达康公司就好(因为与商业…

10.10为什么要用二进制

由选择器引发的疑问与思考 &#xff1f;想的是就让每位表示得越多&#xff0c;不就越能节省空间开销&#xff0c;从而不需要那么多的位数&#xff1f; 状态总量为S,R进制的N位数有SR*N&#xff0c; 表示当前这个位数的进制数所能表示最多的状态总量 客观存在的数量在不同进制…