41

私の友人は、彼女がプレイするのが好きなワードゲームについて話していました。このゲームでは、一度に1文字ずつ切り替えることで、ある単語を別の単語に変換しようとします(文字数は同じです)。各反復で実際の単語が生成されます。

例:

MOON-> WOLF
GOON
GOOF
GOLF
WOLF

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

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

4

7 に答える 7

70

オプション:

  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でワードゲームを実験するために使用したもので、うまく機能しました。

ボーナスポイントについては、ワードプログラムを開始するためのヒントを次に示します。

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文字の単語すべてのセットになります。そこからロジックを実行できます。

于 2009-04-21T14:45:49.800 に答える
33

ほとんどのUNIX(osxを含む)にはファイルがあります/usr/share/dict/words

于 2009-04-21T14:46:57.363 に答える
7

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

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

于 2009-04-21T14:45:45.930 に答える
6

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

/usr/share/dict/
于 2009-04-21T14:47:12.883 に答える
4

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

于 2009-04-21T14:52:31.593 に答える
2

似たようなもののために、私はMozillaFirefox英語辞書を使用しました。必要な英語のバリエーション(米国英語など)を見つけて、[保存先]を右クリックします([Firefoxに追加]ボタン)。取得するファイルはXPIタイプですが、実際にはカモフラージュされたZIPファイルです。en-GB.dic中には、辞書の内容がどれであるかがわかります。

ここに画像の説明を入力してください

辞書ディレクトリ内:

ここに画像の説明を入力してください

于 2009-04-21T14:50:20.647 に答える
2

私は同じ問題を抱えていて、スクラブルベースのサイトを掘り下げてみると、素敵なテキスト形式の単語リストがいくつか見つかりました。彼らはhttps://www.wordgamedictionary.com/english-word-list/で英語版を持っています

于 2012-08-06T05:33:41.280 に答える