我有一个这样的文件:
cluster number 1
1
2
3
cluster number 2
1
2
3
cluster number x
1
2
3
我想将此文件拆分为群集号的段落,例如
cluster number 1
1
2
3
我尝试寻找答案,但我无法处理。 谢谢你的帮助!
答案 0 :(得分:0)
用户正则表达式
import re
input_text = "..."
r = re.findall(r"(cluster number (\d+)\n\n(\d+)\n\n(\d+)\n\n(\d+))", input_text)
print r
此代码返回以下列表
[('cluster number 1\n\n1\n\n2\n\n3', '1', '1', '2', '3'),
('cluster number 2\n\n1\n\n2\n\n3', '2', '1', '2', '3')]
您还可以从here
查看详细说明答案 1 :(得分:0)
根据建议,您应该使用正则表达式。也许re.split函数在这里是合适的:
>>> l = re.split('cluster number (?:\d+)', x)[1:]
>>> [a.split() for a in l]
[['1', '2', '3'], ['1', '2', '3'], ...]