首页 > 编程语言 > 详细

Python 文本处理 论语

时间:2021-05-15 00:38:24      阅读:16      评论:0      收藏:0      [点我收藏+]

1.问题描述:请编写程序,提取《论语》文档中所有原文内容,输出保存到“论语-提取版.txt”文件。输出文件格式要求:去掉文章中原文部分每行行首空格及如“1.11”等的数字标志,行尾无空格、无空行。参考格式如下(原文中括号及内部数字是对应源文件中注释项的标记):

 

 1 j=7
 2 k=0
 3 a=0
 4 b=0
 5 l=[]
 6 content=[]
 7 
 8 try:
 9     with open(rC:\Users\DELL\Desktop\论语.txt,r,encoding=utf-8) as file1:
10         for line in file1:
11             newline=line
12             if newline[2:5] in [str(m)+·+str(n) for m in range(1,25) for n in range(1,25)]13                     or newline[2:6] in [str(m)+·+str(n) for m in range(1,25) for n in range(1,25)]14                     or newline[2:7] in [str(m)+·+str(n) for m in range(1,25) for n in range(1,25)]15                     or newline[2:8] in [str(m)+·+str(n) for m in range(1,25) for n in range(1,25)]:
16                 for p in [str(m)+·+str(n) for m in range(45,0,-1) for n in range(45,0,-1)]:
17                     if p in newline[0:9]:
18                         newline2=newline.replace(p,‘‘)
19                         content.append(newline2)
20                         break
21 
22             else:
23                 content.append(newline)
24 
25 
26     with open(rC:\Users\DELL\Desktop\论语改2.txt,w,encoding=utf-8) as file2:
27         for i in range(len(content)):
28 
29             if 【原文】 in content[i] and i>=b:
30 
31                 a=i
32                 k=i
33 
34                 while k!=0:
35                     if  in content[k+1]:
36                         b=k+1
37                         l.append([a,b])
38                         break
39                     else:
40                         k+=1
41         for m,n in l:
42             for line in content[m+1:n-1]:
43                 file2.write(line)
44 
45 
46 
47 
48 
49 except Exception as t:
50     print(t)

 

Python 文本处理 论语

原文:https://www.cnblogs.com/tlwhhy/p/14770448.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!