用NLTK/Python生成一串N个随机英文单词

Posted

技术标签:

【中文标题】用NLTK/Python生成一串N个随机英文单词【英文标题】:Generate a string of N random English words with NLTK/Python 【发布时间】:2019-08-07 13:52:54 【问题描述】:

有没有办法使用 NLTK/Python 生成一串 N 个随机英文单词?

我知道 NLTK 能够根据输入文本和语法生成句子,但我不需要根据任何语法生成句子 - 我只需要从给定的字典/词汇表中随机选择 N 个单词, 并将它们连接成一个字符串。我也知道生成随机字符串的能力或如何使用 NLTK 使用 n-gram 生成“看起来像英语的”无意义单词,但我需要这些单词是某些字典文件中的实际英语单词。

我试过这样做:

from nltk.corpus import words
from random import sample

n = 100
rand_words = ' '.join(sample(words, n))

但是words 不是可迭代的,所以我不能这样使用它。使用 NLTK 的内置字典创建随机英文单词串的正确方法是什么?

【问题讨论】:

谢谢!这就是我需要的。您想将此作为答案发布,以便我将其标记为已接受吗? 【参考方案1】:

你只需要使用words()函数corpus-structure

rand_words = ' '.join(sample(words.words(), n))

【讨论】:

以上是关于用NLTK/Python生成一串N个随机英文单词的主要内容,如果未能解决你的问题,请参考以下文章

水果单词大全

c语言以键盘输入一串英文字符串,给各个单词之间以空格分开,统计其中有多少个英文单词(用基础方法做 急

泛型集合类中的链表类随机产生100个有序整数(单词)的链表

泛型集合类中的链表类随机产生100个有序整数(单词)的链表

泛型集合类中的链表类随机产生100个有序整数(单词)的链表

zm吃包子