文件处理
Posted life is tough,so are you
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件处理相关的知识,希望对你有一定的参考价值。
把
#hhhh
"hhhh.lab"
我
是
好
.
"hhjkkk.lab"
我
爱
你
.
等等
这种格式的文件变成
0 1 <s>
1 2 怎么无法接通啊
2 1002 <s>
1 3 我是
3 1002 <s>
等等
1002
的格式
1 #encoding=utf-8 2 import os 3 #filename = raw_input(‘enter file name:‘) 4 f = open(‘2.txt‘,‘r‘) 5 lines = f.readlines() 6 ‘‘‘--------------------输出到文件-------------‘‘‘ 7 #filename = raw_input(‘enter file name:‘) 8 fobj = open(‘3.txt‘,‘w‘) 9 #会覆盖原文件 10 list1 = [] 11 list2 = [] 12 13 for i in range(len(lines)): 14 eachLine = lines[i] 15 16 if eachLine.startswith(‘"‘): 17 list1.append(i) 18 #print eachLine, 19 if eachLine.startswith(‘.‘): 20 list2.append(i) 21 22 print list1,list2 23 24 str1 = ‘0 1 <s>‘ 25 fobj.write(‘%s%s‘ % (str1,os.linesep)) 26 27 for i in range(len(list1)): 28 #print i 29 temp = [] 30 j = int(list1[i]) + 1 31 k = int(list2[i]) 32 print ‘======‘ 33 str1 = str(i+1)+‘ ‘+str(i+2)+‘ ‘ 34 for m in range(j,k): 35 #print lines[m].strip() 36 str1 += lines[m].strip() 37 print str1 38 str2 = str(i+2)+‘ 1002 <s>‘ 39 print str2 40 temp.append(str1+‘\n‘+str2+‘\n‘) 41 fobj.write(‘%s%s%s%s‘ % (str1,os.linesep,str2,os.linesep)) 42 43 str1 = ‘1002‘ 44 fobj.write(‘%s%s‘ % (str1,os.linesep)) 45 46 f.close() 47 fobj.close()
思路:提取"hhhh.lab"的行数,‘.’的行数分别填入list1,list2
再处理list1[i]和list2[i]之间的行
以上是关于文件处理的主要内容,如果未能解决你的问题,请参考以下文章
在 Python 多处理进程中运行较慢的 OpenCV 代码片段
你如何在 python 中处理 graphql 查询和片段?