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


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

    初始代码

    查找空行
    
    空行前后添加```
    ```中间添加 # 空行后遇到的第1行文字
    
    txt =
    ```
    3
    
    6
    9
    
    6
    1
    
    5
    
    9
    8
    7
    
    2
    
    
    ```
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    可以使用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
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42

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

    在这里插入图片描述

    调整代码

    查找空行
    
    空行前后添加```
    ```中间添加 # 空行后遇到的第1行文字
    
    txt =
    ```
    3
    
    6
    9
    
    6
    1
    
    5
    
    9
    8
    7
    
    2
    
    
    ```
    
    #  +空格+ 空行后遇到的第1行文字?
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27

    在这里插入图片描述

    在这里插入图片描述

    根据您的要求,将空行前后添加````,并在中间添加 # 和空行后遇到的第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
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35

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

      6

      3
      
      
      • 1
      • 2

      6

      6
      9
      
      
      • 1
      • 2
      • 3

      1

      # 5
      
      
      • 1
      • 2

      9
      8
      7

      # 2
      
      • 1

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

      在这里插入图片描述

    • 相关阅读:
      数字电路逻辑与设计 之循环码和 移存码
      gym 动作空间,观测空间学习
      四种常见分布式限流算法实现!
      远程桌面一直被人爆破的解决思路
      Eclipse配置python环境全步骤
      MyBatis篇---第五篇
      Echarts折线图数据过小重叠,被x轴刻度顶到最上面解决办法
      rust特性
      【OpenCV】-霍夫变换
      【C++修行之道】类和对象(四)运算符重载
    • 原文地址:https://blog.csdn.net/weixin_73675558/article/details/133756468