Split on the period. Note that the following doesn't make sense/requires an example.
Also, if a sentence is long, does not end in the same paragraph, it should be printed as a whole too
woooee
Posting Maven
2,703 posts since Dec 2006
Reputation Points: 827
Solved Threads: 779
Skill Endorsements: 9
Here is example, but English messy way of "Quoting sentence." should be fixed to make this work:
import itertools as it
endsentence = ".?!"
filein = 'd:/test/advsh12.txt'
sentences = it.groupby(open(filein).read(),
lambda x: any(x.endswith(punct)
for punct in endsentence))
for number,(truth, sentence) in enumerate(sentences):
if truth:
print number//2+1,':',previous+''.join(sentence).replace('\n',' ')
previous = ''.join(sentence)
if number>=2*100: break ## 100 first sentences
We use itertools groupby to separate the sentence,punctuation,sentence,punctuation pairs and join them in pairs when reading punctuation (truth is True). We check only end of words not to stop at 1.23 for example.
pyTony
pyMod
6,301 posts since Apr 2010
Reputation Points: 879
Solved Threads: 986
Skill Endorsements: 26