我的文件格式如下:
01*13345233000*7677082000*0335
02*1*Ground*Workshop*640.80*11.46*7344
02*2*First*Office/Labs*300.81*14.10*4241
02*3*Ground*Workshop*774.46*11.46*8875
01*13345233000*7677082000*0335
02*1*Ground*Workshop*640.80*11.46*7344
02*2*First*Office/Labs*300.81*14.10*4241
我只想重新格式化如下(将以01开头的行复制到相应的02行):
02*1*Ground*Workshop*640.80*11.46*7344*01*13345233000*7677082000*0335
02*2*First*Office/Labs*300.81*14.10*4241*01*13345233000*7677082000*0335
02*3*Ground*Workshop*774.46*11.46*8875*01*13345233000*7677082000*0335
02*1*Ground*Workshop*640.80*11.46*734401*13345233000*7677082000*0335
02*2*First*Office/Labs*300.81*14.10*424101*13345233000*7677082000*0335
非常感谢你的帮助。
凯特
答案 0 :(得分:5)
假设您的文件名为textfile.txt
,这将创建一个名为to_output
的列表,您可以编写第二个文件或其他任何可能需要处理的文件...
to_output = []
current_01 = ""
with open('textfile.txt', 'r') as datafile:
for line in datafile:
if line.startswith("01"):
current_01 = line
elif line.startswith("02"):
to_output.append(line.strip()+"*"+current_01)
print to_output