我的数据格式如下:
###John###
someData1
someData2
SomeData3
###Mike###
someData1
someData2
###Ford###
someData1
someData2
SomeData3
someData4
someData5
SomeData6
我希望输出为:
John someData1
someData2
someData3
Mike someData1
someData2
Ford someData1
someData2
someData3
someData4
someData5
someData6
这里的问题是数据的数量(somedata?)每一个名字下面都有不同的名字,并不为人所知我唯一需要处理的是表示新名称开头的前导
###
字符。Somedata?
是一个单词。你知道怎么做吗? 最佳答案
以下给出了所需的确切输出:
from sys import stdout
with open('file') as f:
for n,line in enumerate(f):
if line.startswith('###'):
stdout.write(('' if not n else '\n')+line.strip('#\n'))
else:
stdout.write('\t'+line)
输出:
John someData1
someData2
SomeData3
Mike someData1
someData2
Ford someData1
someData2
SomeData3
someData4
someData5
SomeData6
关于python - 将单列分成两部分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15882960/