我有一个这样的文件:
cluster number 1
1
2
3
cluster number 2
1
2
3
cluster number x
1
2
3
我想将此文件拆分为簇号段,如下所示
cluster number 1
1
2
3
我试图寻找答案,但我无法处理。谢谢你的帮助!
我有一个这样的文件:
cluster number 1
1
2
3
cluster number 2
1
2
3
cluster number x
1
2
3
我想将此文件拆分为簇号段,如下所示
cluster number 1
1
2
3
我试图寻找答案,但我无法处理。谢谢你的帮助!
用户正则表达式
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')]
您还可以从此处查看详细说明
按照建议,您应该使用正则表达式。也许 re.split 函数在这里适合:
>>> l = re.split('cluster number (?:\d+)', x)[1:]
>>> [a.split() for a in l]
[['1', '2', '3'], ['1', '2', '3'], ...]