如何在python中创建文本的二维单词数组?

时间:2017-02-24 03:56:59

标签: python arrays list

我有一个文本,让我们用5个句子说:

  

Lorem Ipsum只是打印和排版的虚拟文本   行业。 Lorem Ipsum一直是业界标准的虚拟文本   自从16世纪以来,一个未知的打印机采用了类型的厨房   然后把它拼凑成一本样本书。它没有幸存下来   仅仅五个世纪,也是电子排版的飞跃,   基本保持不变。它在20世纪60年代随着推广而普及   Letraset表的发布包含。 Lorem Ipsum段落,和   最近使用像Aldus PageMaker这样的桌面出版软件   包括Lorem Ipsum的版本。

使用python,如何将其转换为两个demensianal数组,其中每个句子都以分开的单词分割。

如果我们以第一句为例,这就是我需要成为数组的第一个元素:

['lorem', 'ipsum', 'is', 'simply', 'dummy', 'text', 'of', 'the', 'printing', 'and', 'typesetting', 'industry']

我可以使用以下命令制作它:

string = 'Lorem Ipsum is simply dummy text of the printing and typesetting industry.'

string = string.lower()
arrWords = re.split('[^a-z]', string)
arrWords = filter(None, arrWords)
print arrWords

但是如何通过循环翻译句子来制作这些元素的数组呢?

1 个答案:

答案 0 :(得分:1)

这里的挑战是如何确定句子的结尾。我认为您可以使用RegEx来涵盖大多数事情,但如下所示的简单列表理解将涵盖虚拟文本,因为所有内容都以句点结束。

    x = "Lorem Ipsum is simply dummy ..."

    words = [sentence.split(" ") for sentence in x.split(". ")]