将文件中的分段行加在一起

时间:2016-06-18 00:06:05

标签: python-2.7 file

我正在尝试合并几行(使用filehandle.readlines()命令从文件中读取)。我从上下文中知道,如果任何行以...开头,那么它实际上是前一行的延续。牢记这一点,我想合并这些线以形成一条完整的长线。

我的疑问是:我该怎么做?问题是连续线的数量可能会有所不同。原始文件和我预期的文本如下:

文档(此处,...代表行的延续):

.MODEL MR_INTERMEDIATEM IPWLR NSEG=3
...X0={FormatNumber( (MIN_OUTPUT-0.1), 16 )}
...Y0={FormatNumber( (MIN_OUTPUT-(1e6*0.1)), 16 )}
...X1={FormatNumber( (MIN_OUTPUT), 16 )}
...Y1={FormatNumber( (MIN_OUTPUT), 16 )}
...X2={FormatNumber( (MAX_OUTPUT), 16 )}
...Y2={FormatNumber( (MAX_OUTPUT), 16 )}
...X3={FormatNumber( (MAX_OUTPUT+0.1), 16 )}
...Y3={FormatNumber( (MAX_OUTPUT+(1e6*0.1)), 16 )}
.ENDS

我想拥有什么:

.MODEL MR_INTERMEDIATEM IPWLR NSEG=3 X0={FormatNumber( (MIN_OUTPUT-0.1), 16 )} Y0={FormatNumber( (MIN_OUTPUT-(1e6*0.1)), 16 )} X1={FormatNumber( (MIN_OUTPUT), 16 )} Y1={FormatNumber( (MIN_OUTPUT), 16 )} X2={FormatNumber( (MAX_OUTPUT), 16 )} Y2={FormatNumber( (MAX_OUTPUT), 16 )} X3={FormatNumber( (MAX_OUTPUT+0.1), 16 )} Y3={FormatNumber( (MAX_OUTPUT+(1e6*0.1)), 16 )} .ENDS

1 个答案:

答案 0 :(得分:0)

请勿使用.readlines()阅读,而应使用read()阅读。然后,您可以在将模式分割为行之前处理模式\n...,例如

content = open('data.txt').read()
content = content.replace('\n...', '')
content = content.split('\n')