summaryrefslogtreecommitdiffstats
path: root/words.py
diff options
context:
space:
mode:
authorRose Hogenson <rosehogenson@posteo.net>2025-07-12 06:57:39 -0700
committerRose Hogenson <rosehogenson@posteo.net>2025-07-12 06:57:39 -0700
commit169d0d10b0634a8d76444d2a45bd7b7fd2aa3ec0 (patch)
treef6db28c43110485d70153c9b2085dec6b78c558f /words.py
parentd0886ff7d15968039a51da6de9ea4789d15335ed (diff)
downloadwords-169d0d10b0634a8d76444d2a45bd7b7fd2aa3ec0.tar.zst
Rewrite in Go
Diffstat (limited to 'words.py')
-rw-r--r--words.py54
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)