Как выбрать случайное английское слово из списка [закрыто]

каков был бы лучший способ получить функцию, которая возвращает случайное английское слово (предпочтительно существительное), не сохраняя список всех возможных слов в файле перед рукой?

8 ответов


списки слов не должны занимать столько места.

здесь JSON список слов с более чем 5000 слов, Все существительные. Он часы в под 50K, размер среднего размера изображения jpeg.

Я оставлю выбор случайного в качестве упражнения для читателя.


ты не можешь. Нет никакого алгоритма для генерации осмысленных слов. Вы можете генерировать только слова, которые звучат как английский, но они не будут иметь никакого значения.


вы можете попробовать функцию и проанализировать онлайн-ресурс, такой как:

http://www.zokutou.co.uk/randomword/


другой теоретический подход: вы могли бы очистить случайная статья Википедии страница и вернуть N-е слово статьи.


просто используйте случайное слово API setgetgo. Это бесплатно, это легко, и это круто.

http://randomword.setgetgo.com/


есть генератор случайных слов здесь - это не английский, но это английский, то есть слова достаточно похожи на язык, что пользователь может читать слова и хранить их в краткосрочной памяти.

исходный код на C# и немного kludged, но вы можете использовать аналогичный подход в Python для генерации большого количества слов без необходимости хранить массивный список.

кроме того, вы можете вызвать веб-сервис на демо-странице напрямую - он размещен на Однако GoDaddy, поэтому нет гарантий, что он будет работать в производстве!


вы можете скачать "слова, общие для SOWPODS и TWL" списки изhttp://www.math.toronto.edu/jjchew/scrabble/lists/ . Я сложил все слова в этих файлах вместе, и список весил около 642 тысяч. Не огромный ни по каким стандартам. Списки содержат много неясных слов, хотя, так как они предназначены для использования турнира Эрудит. Хорошо, что списки образуют существенное подмножество английского языка.


Ну, у вас есть три варианта:

  • Hard-кодирует список слов и инициализирует массив с ним.
  • получить список из интернета, а не файл.
  • сохранить список возможных слов в файле.

единственный способ избежать вышесказанного, если вы не обеспокоены тем, является ли слово реальным: вы можете просто генерировать строки произвольной длины символов. (Невозможно программно генерировать слова без список словарей, чтобы перейти от.)