#!/usr/bin/python import fileinput import random import sys import argparse parser = argparse.ArgumentParser(description="Print some random dictionary words.") parser.add_argument( "-d", dest="dictionary", metavar="DICT", help="supply a dictionary", default="/usr/share/dict/american-english-large", ) parser.add_argument( "-c", dest="count", type=int, help="specify how many words you want per line", default=10, ) parser.add_argument( "-l", dest="lines", type=int, help="specify how many lines of random words you want", default=1, ) parser.add_argument( "--no-appos", action="store_true", help="remove words with appostrophes" ) parser.add_argument( "--no-proper", action="store_true", help="remove words that start with a capital letter", ) args = parser.parse_args() # print args with open(args.dictionary, "r") as wordsfile: words = wordsfile.readlines() if args.no_appos: words[:] = [word for word in words if word.find("'") == -1] if args.no_proper: words[:] = [word for word in words if not word[0].isupper()] for _ in range(0, args.lines): print(" ".join([w.strip("\n") for w in random.sample(words, args.count)]))