python 背单词

import sys
import fileinput

word_name = ""
file_buf = ""
file_object = ""
word_dict = {}


words = \
[
        #1
        ["acrimonious", "avid", "barrage", "cache", "calcify", "condemn", "contradict", "daunt",
         "decry", "demur", "dispassionate", "distort", "exuberant", "figurative", "gargantuan", "gullible",
         "impugn", "incubate", "inundate", "lurid", "momentous", "obligatory", "obstinate", "obstreperous",
         "ossify", "peripheral", "plausible", "proscribe", "provoke", "repudiate", "resign", "rhetorical",
         "safeguard", "skirt", "slippery", "spur", "squander", "vignette", "warp"],
        #2
        ["aggrandize", "anachronistic", "anathema", "austere", "balloon", "belie", "burgeon", "chary",
         "check", "clarity", "comprehend", "conscientious", "contradict", "convoluted", "corroborate",
         "deft", "deify", "denounce", "deride", "dilettante", "divulge", "downplay", "ebullient", "epitomize",
         "exploit", "fathom", "gibe", "hamper", "harsh", "ingenuous", "insolent", "knotty", "lionize",
         "malleable", "mediate", "meticulous", "mint", "orthodox", "penchant", "robust", "shopworn",
         "strident", "substantiate", "transitory" ],
        #3
        ["accord", "articulate", "ascetic", "boisterous", "conjecture", "covert", "dabble", "deplete",
         "dirge", "discretion", "disjointed", "dormant", "enunciate", "flounder", "gaffe", "gallant",
         "hamper", "indolent", "ineluctable", "lavish", "lugubrious", "mundane", "nominal", "obstruct",
         "prescience", "quiescent", "rapport", "reap", "redeem", "remunerate", "reticent", "salient",
         "salvage", "serpentine", "sloth", "submerge", "sumptuous", "taxing", "temperate", "tumult",
         "undermine", "unexceptionable", "unimpeachable", "unruly", "versatile"],
        #4
        ["admonish", "adulate", "ambrosial", "articulate", "calamity", "catastrophe", "choleric",
         "cloying", "concord", "consummate", "contagious", "deleterious", "depreciate", "diaphanous",
         "eccentric", "enunciate", "ephemeral", "eulogize", "extravagant", "foil", "forfeit",
         "histrionic", "hobble", "idiosyncrasy", "inevitable", "ingenious", "insipid", "intemperate",
         "momentous", "morose", "opaque", "opportune", "palliate", "petulant", "profundity", "prolong",
         "prosaic", "quell", "redolent", "rehearsal", "release", "relinquish", "remiss", "retribution",
         "rhetorical", "robust", "shroud", "sluggish", "smug", "solicitous", "somber", "soothe",
         "stalwart", "tawdry", "temporize", "theatrical", "therapeutic", "thwart", "timely", "toady",
         "trivial", "vacillate", "vindictive", "virtuoso", "viscid", "viscous"],

        #5
        ["acumen", "antithetical", "arcane", "attest", "autonomy", "barter", "byzantine", "cacophony",
         "complacent", "confound", "descend", "disseminate", "dissension", "erratic", "esoteric",
         "extrapolate", "fidelity", "harbinger", "inane", "innocuous", "knack", "mockery", "parody",
         "paucity", "penchant", "perquisite", "petty", "pilfer", "politic", "precursor", "scrutinize",
         "slipshod", "steadfast", "subdue", "tenacious", "volition", "worldly"],

        #6
        ["alacrity", "alleviate", "belligerence", "censure", "conciliate", "copious", "denounce",
        "distort", "dubious", "embarrass", "esoteric", "espouse", "frigid", "glacial", "impenetrable",
        "implement", "jaded", "lissome", "lithe", "mar", "motley", "onset", "palliate", "raze", "reprieve",
        "salvage", "screen", "stifle", "surfeit", "therapeutic"],

        #7
        ["alleviate", "alloy", "altruism", "belie", "circumscribe", "compose", "denude", "dispatch"
        "disregard", "exonerate", "flourish", "forthright", "fraudulent", "hubris", "imperious", "imprudent",
        "innocuous", "inquisitive", "myopic", "obsequious", "palliate", "prestige", "serene", "soak",
        "soporific", "stipulate", "tactile", "tangible", "vulnerable"],

        #8
        ["bully", "chicanery", "circumscribe", "consign", "contiguous", "cosmopolitan", "debilitate", "discern",
        "discretion", "ecumenical", "imperative", "indispensable", "insurgent", "intimidate", "lavish",
        "mediocre", "monarch", "perspicacious", "potentate", "prodigious", "quiescent", "recluse", "resilience",
        "therapeutic", "vulnerable"],

        #9
        ["abhor", "acrid", "aplomb", "apostasy", "ascetic", "census", "compliant", "convoluted", "deliberate",
        "derivative", "despise", "diaphanous", "diatribe", "diffident", "dissension", "diversity", "efficacious",
        "enigma", "euphonious", "facetious", "forthright", "fracture", "iconoclast", "incentive", "indispensable",
        "inept", "insight", "myriad", "negotiate", "partisan", "perfidy", "precursor", "predilection", "prescience",
        "profundity", "propensity", "protean", "pungent", "refute", "reserved", "reticent", "spartan", "supercilious",
        "terse", "tout", "trenchant", "trifling", "versatile", "viable", "volatile", "zealot"],

        #10
        ["affable", "aggressive", "ambiguous", "autonomy", "backfire", "beneficent", "chicanery", "conservative",
        "contaminate", "debris", "demonstrate", "denounce", "dispassionate", "elude", "exacting", "fickle",
        "flout", "hybrid", "hyperbole", "implement", "innocuous", "jaundice", "mercurial", "mollify", "mongrel",
        "ossify", "preeminent", "strike", "stringent", "succinct", "tenable", "voyeur", "wrongheaded"],

        #11
        ["aggressive", "appeal", "archetype", "banish", "capitulate", "clandestine", "decipher", "discriminate",
        "dormant", "duplicate", "extinct", "grandstand", "imposing", "impudent", "intermittent", "lachrymose",
        "marginal", "maudlin", "obedient", "oust", "panache", "peripheral", "placid", "precarious", "quiescent",
        "redolent", "screen", "scrutinize", "surrender", "surreptitious", "tacit", "waft", "worldly"],

        #12
        ["abandon", "autonomy", "benign", "commiserate", "condemn", "convoluted", "cryptic", "enthrall",
        "forestall", "grate", "improvise", "munificent", "nonchalant", "occult", "ostentatious", "perfunctory",
        "pragmatic", "recessive", "relinquish", "resign", "resolute", "restitution", "skimp", "stodgy",
        "strident", "suppress", "tedious", "vestigial"],

        #13
        ["abbreviate", "abstemious", "anachronistic", "backfire", "candor", "complacent", "connoisseur",
        "consequence", "cosmopolitan", "defuse", "delusion", "digress", "dilatory", "discreet", "discriminate",
        "disregard", "enigma", "erudite", "finicky", "fluent", "headlong", "humble", "indifferent", "ingenuous",
        "laconic", "liberal", "lucid", "mishap", "mitigate", "momentous", "nominal", "nonchalant", "nuance",
        "opprobrious", "palliate", "pedestrian", "precipitate", "prudent", "pundit", "repeal", "repress",
        "retrieve", "simulate", "subdue", "temperate", "trifling", "trivial", "truncate", "virtuoso"],

        #14
        ["agreeable", "ally", "aplomb", "arduous", "assuage", "auspicious", "autonomy", "badinage",
        "banter", "bombast", "cast", "compose", "compunction", "confound", "conjecture", "consummate",
        "convoluted", "dilettante", "diplomatic", "dire", "discreet", "eclectic", "erode", "escalate",
        "expurgate", "extol", "gratify", "imperturbable", "inept", "laborious", "lucid", "meddle", "misgiving",
        "mollify", "moribund", "nonplus", "paramount", "partisan", "persevere", "plummet", "profusion",
        "propitious", "prudent", "redundant", "repress", "resurgence", "resuscitate", "scorn", "serene", "subdue",
        "superfluous", "tout", "whimsical"],

        #15
        ["accidental", "ambiguous", "assertive", "benign", "blight", "burgeon", "captious", "censure",
        "cognizant", "colossal", "cowardice", "deliberate", "diffident", "disparate", "eclectic", "effusive",
        "elude", "erudite", "exonerate", "expedite", "expurgate", "farce", "hamper", "hobble", "inclement",
        "indispensable", "innocuous", "largesse", "lush", "meticulous", "moderate", "paucity", "perilous",
        "persistence", "quarantine", "scrupulous", "solemnity", "sparing", "spur", "suffuse", "willful", "wilt"],

        #16
        ["accidental", "ambiguous", "captious", "captivate", "censure", "charlatan", "contentious", "deliberate",
        "disparate", "eclectic", "elude", "enlighten", "erudite", "expedite", "exploit", "fanciful", "farce",
        "hamper", "hobble", "illuminate", "impostor", "inclement", "indispensable", "nominal", "persevere",
        "plagiarize", "reserved", "reticent", "salient", "scour", "serpentine", "sinuous", "sordid", "squalid",
        "startle", "succinct", "terse", "tycoon", "voluble", "vulnerable", "willful"],

        #17
        ["ambiguous", "apocalyptic", "arbitrary", "assiduous", "banal", "benign", "circumspect", "conform",
        "decorum", "deleterious", "demanding", "distill", "downplay", "eclectic", "enmity", "ephemeral",
        "exacting", "exonerate", "exorbitant", "extravagnt", "fecund", "fleeting", "grandstand", "incessant",
        "industrious", "inimical", "innocuous", "insouciant", "lavish", "magnitude", "penchant", "perfunctory",
        "pernicious", "pique", "profligate", "sinecure", "slovenly", "spectator", "squander", "steadfast",
        "stereotype", "substantiate", "suffuse", "trenchant", "unremitting", "vacuous", "vilify", "vocation"],

        #18
        ["anomalous", "aphorism", "arrest", "audacious", "bolster","castigate","cleave",
         "commiserate","connoisseur","considerable", "contagious","contumacious",
         "crook", "cryptic", "curtail", "deleterious", "demolition", "divert",
         "ephemeral", "epigram","erratic", "eschew", "evoke", "exceptional",
         "fortify", "gregarious", "hardy", "imperturbable", "indelible",
         "integral", "laconic", "meteoric", "obstreperous", "pernicious", "pointer",
         "procrastinate", "reconcile", "redundant", "ruffle", "soothe",
         "succinct", "superfluous", "surmise", "timorous", "transitory", "virtuoso"],

        #19
         ["acclaim", "ameliorate", "amicable", "appall", "belie", "calculated", "caprice",
         "daunt", "derivative", "deter", "digress", "disregard", "downplay", "duplicate",
         "dynamic", "erratic", "eschew", "esoteric", "exacerbate", "fickle", "harbinger",
         "herald", "idiosyncrasy", "innovative", "insipid", "insular", "integrity", "intransigent",
         "lenient", "lethargic", "lurid", "meddle", "mercurial", "minimize", "moratorium",
         "officious", "plebeian", "presumptuous", "proliferate", "provincial", "recondite",
         "replicate", "resolute", "respite", "reticent", "scour", "submissive", "vapid", "vulnerable"],

        #20
        ["aberrant", "abeyance", "accessible", "accidental", "accomplish", "acerbic", "anonymous",
         "boon", "brisk", "carve", "chagrin", "clandestine", "collaborate", "conceal", "conspire",
         "consummate", "conundrum", "corrosive", "cryptic", "deference", "discompose", "distinctive",
         "elevate", "enigma", "ensconce", "favorable", "forestall", "gregarious", "harsh",
         "histrionic", "humble", "imperious", "influx", "insensitive", "intelligible", "inure",
         "irritate", "laconic", "meditate", "melodramatic", "meticulous", "mulish", "nonchalant",
         "obdurate", "orthodox", "perfunctory", "persistence", "presumptuous", "prophetic", "revive",
         "ruminate", "serendipity", "sinecure", "stealth", "stolid", "stymie", "submissive",
         "surreptitious", "terse", "theatrical", "torpid", "tractable", "voluble", "voluptous"],

        #21
        ["accelerate", "accessible", "baffling", "circumscribe", "comprehend", "contagious",
         "credulous", "defy", "delusion", "dilettante", "dismay", "embrace", "emollient", "erudite",
         "feckless", "fervent", "frustrate", "gullible", "hypnotic", "impassive", "indispensable",
         "instill", "jaundice", "legion", "minute", "momentous", "nonentity", "ostentatious",
         "overbearing", "override", "phlegmatic", "presage", "proffer", "protean", "revere", "scant",
         "sensitive", "shirk", "slight", "soporific", "subtle", "trivial", "urbane", "venerate"],

        #22
         ["acclaim", "acerbic", "apprehension", "audacious", "avarice", "circumspect", "conservative",
         "conviction", "dampen", "dearth", "dehydrate", "deleterious", "deprecate", "desiccate", "dilatory",
         "disparage", "disregard", "droll", "dubious", "enervate", "flag", "flexible", "fraudulent",
         "garble", "gregarious", "innocuous", "intransigent", "lugubrious", "malaise", "metaphysical",
         "mirage", "nostalgia", "partisan", "placate", "precarious", "precipitate", "pristine", "ravenous",
         "reckless", "scads", "slight", "sluggish", "spate", "substantiate", "volatile", "voluptuous", "voluptuous",
         "voracious", "warp", "wary"],

        #23
         ["abate", "abstruse", "accentuate", "advocate", "aggressive", "alleviate", "arcane", "bromide", "cameo",
         "compound", "conserve", "corroborate", "debacle", "discompose", "discursive", "disparate", "enmity", "exhort",
         "foil", "ingenuity", "lampoon", "menace", "myopic", "obdurate", "occult", "palpable", "pillory", "pioneer",
         "platitude", "postulate", "predilection", "prerequisite", "quibble", "ramble", "recondite", "redundant",
         "revere", "sage", "savant", "secrete", "summon", "superfluous", "trespass", "venal", "venerate", "vignette",
         "vivacious"],

        #24
        ["abundant", "aloof", "ambiguous", "aphorism", "belligerence", "blight", "bombast", "clarity", "clement",
         "conspicuous", "convoluted", "deliberate", "derivative", "diaphanous", "dilettante", "disparate",
         "epitomize", "evoke", "exonerate", "flamboyant", "forthright", "gaudy", "iconoclast", "imperturbable",
         "incentive", "indigenous", "inept", "inimical", "judicious", "justify", "maverick", "meager", "meticulous",
         "negotiate", "ossify", "paraphrase", "pellucid", "perfidy", "placate", "preeminent", "punctilious", "quotidian",
         "refute", "scant", "shrewd", "solitude", "supercilious", "uncanny", "vague", "variegated", "viable"]
]


def load_word_to_memory(line):
    global word_dict
    global word_name
    if line[0] == 'Q':
        word_name = line.split(":")[1].strip()
        word_dict[word_name] = ""
        #file_object = open(file_name+".1", 'w+')
    elif line[0] == 'A':
        word_dict[word_name] += line
    elif line[0] == ' ':
        word_name = ""
    else:
        pass

for line in fileinput.input("3000.txt"):
    load_word_to_memory(line)

#for line in fileinput.input("input"):
#    word=line.strip('\n')
#    print str(line) + word_dict[str(word)] + "\n"

#for k,v in word_dict.items():
#    print v

def print_world(num):
    for k in words[num]:
        print k,
    print "\t"

def print_all_world_mean(num):
    for k in words[num]:
        if word_dict.has_key(k):
            print k + "  ==>  " + word_dict[k]
        else:
            print k + "  ==>  " + "ops, seem no meaning find.."


def print_word_list(num):
    p = 0
    print_world(num)
    wlen = len(words[num])
    while True:
        x = raw_input()
        if x == "all":
            print_all_world_mean()
        elif x == "w":
            print words[num][p%wlen]
            p = p + 1
        elif x == "a":
            key = words[num][p%wlen-1]
            if word_dict.has_key(key):
                print key+" ==> "+word_dict[key]
            else:
                print key+" not found..."
        elif x == "b":
            p = p - 1
            print words[num][p%wlen-1]
        elif x == "c":
            p = 0
            print "all clear..."
        elif x == "l":
            print_world(num)
        elif x == 'p':
            print '\n\n\n\n\n\n'
        elif x == "q":
            return
        else:
            pass


if __name__ == "__main__":
     while True:
         print '''q to quit, 1-24 to choose list..'''
         x = raw_input()
         if x == 'q':
             break
         elif int(x) >= 1 and int(x) <= 24:
             print_word_list(int(x)-1)
         else:
             pass

你可能感兴趣的:(python 背单词)