Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用python在段落的每一新行上分隔句子_Python_Parsing - Fatal编程技术网

使用python在段落的每一新行上分隔句子

使用python在段落的每一新行上分隔句子,python,parsing,Python,Parsing,我有以下段落: 输入:-- “然而,通常缺乏足够可靠的地方、区域和国家土地利用和土地覆盖数据以及时间和地理细节,无法准确估计景观变化。美国地质调查局的EROS数据中心和美国环境保护局的景观生态学分支机构正在合作进行一项为期四年的研究项目,以记录过去30年来相邻美国土地覆盖变化的类型、分布、速率、驱动因素和后果。该项目使用生态区域框架作为地理分层器。” 想要在新行中分隔每个句子。我正在将“.”替换为“\n”(新行字符)。它对正常的句子效果很好,但当“美国地质…”这样的东西出现时,我的脚本会生成两个

我有以下段落:

输入:--

“然而,通常缺乏足够可靠的地方、区域和国家土地利用和土地覆盖数据以及时间和地理细节,无法准确估计景观变化。美国地质调查局的EROS数据中心和美国环境保护局的景观生态学分支机构正在合作进行一项为期四年的研究项目,以记录过去30年来相邻美国土地覆盖变化的类型、分布、速率、驱动因素和后果。该项目使用生态区域框架作为地理分层器。”

想要在新行中分隔每个句子。我正在将“.”替换为“\n”(新行字符)。它对正常的句子效果很好,但当“美国地质…”这样的东西出现时,我的脚本会生成两个我不想要的独立句子。请提出任何可能的建议

预期输出:--(3个句子按顺序编号)

1) 然而,通常缺乏足够可靠的地方、区域和国家土地利用和土地覆盖数据以及时间和地理细节,无法准确估计景观变化

2) 美国地质调查局的EROS数据中心和美国环境保护局的景观生态学分支机构正在合作进行一项为期四年的研究项目,以记录过去30年来相邻美国土地覆盖变化的类型、分布、速率、驱动因素和后果

3) 该项目使用生态区域框架作为地理分层器

目前获得:(7句)

1) 然而,通常缺乏足够可靠的地方、区域和国家土地利用和土地覆盖数据以及时间和地理细节,无法准确估计景观变化

2) 美国

3) 美国

4) 美国地质调查局的EROS数据中心和景观生态学分部

5) 美国

6) 环境保护署正在合作进行一项为期四年的研究项目,以记录过去30年来美国土地覆盖变化的类型、分布、比率、驱动因素和后果


7) 该项目使用生态区域框架作为地理分层工具。

使用
nltk
无疑是一个很好的方法。句子可以列举如下:

import nltk

text = "However, there is generally a lack of local, regional, and national land use and land cover data of sufficient reliability and temporal and geographic detail for providing accurate estimates of landscape change. The U.S. Geological Survey's EROS Data Center and the Landscape Ecology Branch of the U.S. Environmental Protection Agency are collaborating on a four-year research project to document the types, distributions, rates, drivers, and consequences of land cover change for the conterminous United States over the past 30 years. The project is using an ecoregion framework as a geographic stratifier."                
tokenizer = nltk.data.load('tokenizers/punkt/english.pickle')

for index, sentence in enumerate(tokenizer.tokenize(text), start=1):
    print "{}) {}\n".format(index, sentence)
这将显示以下输出:

1)然而,通常缺乏足够可靠的地方、区域和国家土地利用和土地覆盖数据以及时间和地理细节,以提供准确的景观变化估计。
2) 美国地质调查局的EROS数据中心和美国环境保护局的景观生态学分支机构正在合作进行一项为期四年的研究项目,以记录过去30年来相邻美国土地覆盖变化的类型、分布、速率、驱动因素和后果。
3) 该项目使用生态区域框架作为地理分层器。