diff options
| author | Rose Hogenson <rosehogenson@posteo.net> | 2025-07-12 06:57:39 -0700 |
|---|---|---|
| committer | Rose Hogenson <rosehogenson@posteo.net> | 2025-07-12 06:57:39 -0700 |
| commit | 169d0d10b0634a8d76444d2a45bd7b7fd2aa3ec0 (patch) | |
| tree | f6db28c43110485d70153c9b2085dec6b78c558f /words.py | |
| parent | d0886ff7d15968039a51da6de9ea4789d15335ed (diff) | |
| download | words-169d0d10b0634a8d76444d2a45bd7b7fd2aa3ec0.tar.zst | |
Rewrite in Go
Diffstat (limited to 'words.py')
| -rw-r--r-- | words.py | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/words.py b/words.py deleted file mode 100644 index b3420ab..0000000 --- a/words.py +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/env python - -import random - -wordList = open("words.txt") -letterNumerators = [[0 for i in range(27)] for i in range(27)] -letterDenominators = [0 for i in range(27)] -wordBeginnings = [0 for i in range(27)] -wordsNum = 0 - -for line in wordList: - line = line.lower() - line = line[:-1] - acceptable = True - for letter in line: - if (ord(letter) < 97 or ord(letter) > 122): - acceptable = False - - if len(line) < 0: - acceptable = False - if acceptable: - wordsNum += 1 - wordBeginnings[ord(line[0]) - 96] += 1 - for i in range(len(line) - 1): - letterDenominators[ord(line[i]) - 96] += 1 - letterNumerators[ord(line[i]) - 96][ord(line[i + 1]) - 96] += 1 - letterDenominators[ord(line[-1]) - 96] += 1 - letterNumerators[ord(line[-1]) - 96][0] += 1 - - -while True: - newWord = "" - j = 0 - number = random.SystemRandom().random() * wordsNum - for i in range(len(wordBeginnings)): - number -= wordBeginnings[i] - if number < 0: - newWord += (chr(i + 96)) - break - - newWordFinished = False - while not newWordFinished: - number = letterDenominators[ord(newWord[j]) - 96] * random.SystemRandom().random() - for i in range(len(letterNumerators[ord(newWord[j]) - 96])): - number -= letterNumerators[ord(newWord[j]) - 96][i] - if number < 0: - if i == 0: - newWordFinished = True - break - j = j + 1 - newWord += (chr(i + 96)) - break - - print(newWord) |
