前两篇转载别人的精彩文章,自己也总结一下python split的用法吧!

时间:2022-10-16 21:50:02

前言:前两篇转载别人的精彩文章,自己也总结一下吧!

最近又开始用起py,是为什么呢?

自己要做一个文本相似度匹配程序,大致思路就是两个文档,一个是试题,一个是材料,我将试题按每题分割出来,再将每题的内容与材料中进行文本相似度匹配。

所以先首先要做的是将试题把每道题作为一个字符串切割开来,存放到字典中。

程序入下:

# -*- coding:utf-8 -*-
import re #正则模块
f = open('test.txt','r')
s = f.read()
s1 = s.split('工作人员考试')#一级切割,把每套题分割开来
print len(s1)
r1 = re.split('(\d{1,3}\.)',s1[0])#用正则按比如"1.","11.","170."把每套题中的题亩切割开来
for i in r1:
print i
f.close() #关闭文件

文本内容:

一、判断題(正确的选A,错误的选B,涂在答题卡的相应位置:每题1分,共20分)
1. 沟通仅仅是两个或两个以上的人之间的意思传送。()
2. 扁平型组织的控制跨度要小些。 ()
3. 企业人员素质普遍偏高,对领导的意图能很好地意会,则适合采取集权管理。()
4. 决策的关键是目标,没有目标就没有决策。 ()
5. 头脑风暴法是为了保证群体决策的创造性,提高决策质量,改善群体决策而发展起来。()
6. 优秀领导者不仅依靠合法的地位所赋予他的职权,而且能以个人的才能、魄力和威望来促使他人努力工作。 ()

输出结果:

Python 2.7.10 (default, May 23 2015, 09:40:32) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> ================================ RESTART ================================
>>>
13
2016年4月16日重庆市綦江区事业单位公开招聘
一、判断題(正确的选A,错误的选B,涂在答题卡的相应位置:每题1分,共20分) 1.
沟通仅仅是两个或两个以上的人之间的意思传送。() 2.
扁平型组织的控制跨度要小些。 () 3.
企业人员素质普遍偏高,对领导的意图能很好地意会,则适合采取集权管理。() 4.
决策的关键是目标,没有目标就没有决策。 () 5.
头脑风暴法是为了保证群体决策的创造性,提高决策质量,改善群体决策而发展起来。() 6.
优秀领导者不仅依靠合法的地位所赋予他的职权,而且能以个人的才能、魄力和威望来促使他人努力工作。 ()

最后说明一下:
re.split('(\d{1,3}\.)',s1[0])#这里若去掉括号,则分割符号不会被保留

输出结果如下:

>>> ================================ RESTART ================================
>>>
13
2016年4月16日重庆市綦江区事业单位公开招聘
一、判断題(正确的选A,错误的选B,涂在答题卡的相应位置:每题1分,共20分) 沟通仅仅是两个或两个以上的人之间的意思传送。() 扁平型组织的控制跨度要小些。 () 企业人员素质普遍偏高,对领导的意图能很好地意会,则适合采取集权管理。() 决策的关键是目标,没有目标就没有决策。 () 头脑风暴法是为了保证群体决策的创造性,提高决策质量,改善群体决策而发展起来。() 优秀领导者不仅依靠合法的地位所赋予他的职权,而且能以个人的才能、魄力和威望来促使他人努力工作。 ()