This repository contains two Python scripts that generate random word-based combinations using the NLTK WordNet corpus and the 10,000 most common English words.
- Uses open source NLTK WordNet database for word selection
- Filters words to the 10,000 most common English words (auto-downloads if needed)
- Automatically downloads required NLTK data if missing
- Batch generation and interactive prompts
- Windows executable generation supported (see below)
Generates 20 random adjective-noun pairs per batch.
- Press [enter] to generate another batch, or 'q' to quit.
python random_adj_noun.pyGenerates random adjective-noun-number combinations, suitable for memorable passwords or passphrases.
- Filters adjectives and nouns to the 10,000 most common English words (downloads automatically from Google 10k list)
- Options for capitalization, symbol placement, number range, and batch size
- All spaces are replaced with dashes, and numbers are zero-padded to 4 digits
python random_password_generator.py --capitalize --symbol ! --symbol-pos start --count 10 --min 100 --max 9999--capitalize: Capitalize the first letter of each word--symbol SYMBOL: Add a symbol to the start or end--symbol-pos start|end: Position of the symbol (default: start)--count N: Number of combinations per batch (default: 20)--min N: Minimum number value (default: 0)--max N: Maximum number value (default: 9999)
You can generate a standalone Windows executable for either script using PyInstaller:
-
Install PyInstaller:
pip install pyinstaller
-
Build the executable (example for password generator):
pyinstaller --onefile random_password_generator.py
The executable will be created in the
distfolder.
A pre-built Windows .exe for the password generator is available on the GitHub Releases page. Download the latest random_password_generator.exe from the Releases section—no Python installation required.
Note: If you want to build your own executable, see the instructions above under "Windows Executable."
To share the .exe file, use GitHub Releases:
- Go to your repository on GitHub.
- Click on "Releases" > "Draft a new release".
- Upload the
.exefile (from thedistfolder) as a release asset. - Publish the release. Users can then download the executable directly from the Releases page.
Note: Do not commit the
.exefile to your repository. Use Releases for binary distribution.
- Python 3.7+
nltklibrary
-
Clone or download this repository.
-
Install the required Python package:
pip install nltk
This project is open source and uses the NLTK WordNet corpus and the Google 10,000 English words list.