python - 在两个相同的字符串之间从 python 中的 txt 文件中读取一段文本

标签 python python-3.x io readlines

    self.viewerData = []
    tempViewerData = []
    tempViewer = []
    started = False
    with open("tittardata.txt", "r") as fp:
        for i, line in enumerate(fp.readlines()):
            if line.startswith("=="):
                started = True
                continue
            if started and line.startswith("--"):
                started = False
            if started == True:
                tempViewerData.append(line.rstrip("\n"))

我正在尝试从下面的 txt 文件中读取 block ,这些 block 在两端用“---”分隔。 在第一个 block 中,分隔由以“===”开头并以“--”结尾的不同符号处理。即将到来的 block 由相同的符号解析,这使得提取 block 更加困难。到目前为止,这是我的尝试,感谢所有帮助。

这是文本文件的摘录:

=================
19.37/2
19.52/2
21.07/1
21.22/1
21.37/1
-------
19.37/2
19.52/2
-------

最佳答案

blocks = []
block = []

for line in f:
    if line[:3] in ('===', '---'):
        # don't record empty blocks, avoids empty block at start
        if block:
            blocks.append(block)
            block = []
    else:
        block.append(line.rstrip('\n'))
# needed if last block is not bounded by separator
if block:
    blocks.append(block)

关于python - 在两个相同的字符串之间从 python 中的 txt 文件中读取一段文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20843225/

相关文章:

python - 重新运行单元格时,Jupiter notebook 中的 BackTrader 图表消失

Python - 使用 PyQt 进行线程处理

python - 如何将列表元素添加到字典中

linux - JCR/Jackrabit/Derby - 在 Linux 上恢复版本时使用二进制数据的 IO 速度慢

java - 使用 `java.nio.file.spi`来实现对远程文件系统的访问有意义吗?

python - 在 Tensorflow 中重新初始化变量

python - Django View 没有返回值的函数

python - 从不完整的 HTTP JSON 响应中完成 json 字符串

django - 如何在 UpdateAPIView 中返回自定义 JSON 响应?

io - 打印输入+IO功能输出