按关键字 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()
...你把它作为一个 str
ing,所以你可以用函数 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."]
我在 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()
...你把它作为一个 str
ing,所以你可以用函数 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."]