按关键字 python 将文本文件拆分为多行

Split text file into lines by key word python

我在 python 中导入了一个大文本文件,我想按关键字拆分成行,然后使用这些行将相关信息提取到数据框中。

每一行的数据遵循相同的模式,但字符数不会完全相同,有些行可能有额外数据

所以我有一个文本文件,例如:

{数据:name:Mary,friends:2,cookies:10,chairs:4},{数据:name:Gerald friends:2,cookies:10, chairs:4, outside:4},{数据: name:Tom, friends:2, cookies:10, chairs:4, stools:1}

行与行之间总是有关键词data,有什么办法可以把它拆分出来,用这个词作为行首(然后放到一个数据框)?

我不确定从哪里开始所以任何帮助都会很棒

当您像这样获取 .txt 文件的内容时...

with open("file.txt", 'r') as file:
    content = file.read()

...你把它作为一个 string,所以你可以用函数 str.split():

拆分它
content = content.split(my_keyword)

你可以用一个函数来完成:

def splitter(path: str, keyword: str) -> str:
    with open(path, 'r') as file:
        content = file.read()
return content.split(keyword)

你可以这样调用:

>>> splitter("file.txt", "data")
["I really like to write the word ", ", because I think it has a lot of meaning."]