web-dev-qa-db-ja.com

プログラムで使用するための無料の単語リスト?

私の友人は、1回に1文字ずつ切り替えて実際のWordを生成することで、1つのWordを別のWord(同じ数の文字)に変換しようとするときにプレイしたいWordゲームについて話していました。

例:

ムーン->ウルフ
続ける
へま
ゴルフ

ソリューションを生成するプログラムを書くのは楽しい小さなプロジェクトだと思いました。さらに2ワードを与えて、ソリューションが存在するかどうかと、最適なソリューションの反復回数を決定します。

問題は、プログラムから簡単にアクセスできる無料のWordリストを見つけられないことです。私はこれをPythonを学ぶための言い訳として使用することも考えているので、無料のWordリストと、Pythonから解析してアクセスする方法についてのポインタを知っている人がいれば素晴らしいと思います。私が自分で作業する最適なパスを見つける方法を見つけるためのアルゴリズム。

34
Davy8

オプション:

  1. 一般的なまたは園芸の種類のUnixインストールで/ usr/share/dict/wordsを探します。
  2. http://www.ibiblio.org/webster/
  3. http://wordlist.sourceforge.net/
  4. http://svnweb.freebsd.org/csrg/share/dict/ ( 'words'ファイルの 'revision'タグをクリック)

#4は私が自分の Python実験 でWordゲームに使用したもので、うまく機能しました。

ボーナスポイントについては、Wordプログラムを開始するための方法を以下に示します。

import re
startwith = "MOON"
endwith = "GOLF"
cklength = re.compile('.{' + str(len(startwith)) + '}(\n)?$', re.I)
filename = "C:/dict.txt"
words = set(x.strip().upper() for x in open(filename) if x.match(cklength))

単語は、辞書にあるすべての4文字の単語のセットになります。そこからロジックを実行できます。

66

ほとんどのunix(osxを含む)にはファイル/usr/share/dict/words

25
Adam Luter

英語の単語の2.2MBのリスト ここ を見つけることができます。

ファイルI/O関数 を使用してそれらにアクセスできます。

6
ryeguy

linuxインストールにアクセスできる場合は、Wordリストがいくつかあるはずです。

/usr/share/dict/
5
Eoin Campbell

dict.org にあるデータベースをご覧ください。これらは実際には辞書データベースなので、Wordの定義を自分で抽出する必要があります。 Wordnet から始めることができます。

4
kgiannakakis

同様の何かのために、私は mozilla英語辞書 を使用しました。これはZipファイルです(別の拡張子があります)。内部には、辞書であるen-GB.dicがあります。

1
idrosid

私は同じ問題を抱えていて、スクラブルベースのサイトを掘り下げて、いくつかのWordリストをニーステキスト形式で見つけました。 https://www.wordgamedictionary.com/english-Word-list/ に英語版があります。

1
Cesar Bielich