``` import random alpha_left = ['r', 'q', 'w', 'e', 'r', 't', 'a', 's', 'd', 'f', 'g', 'z', 'x', 'c', 'v', 'b'] num_left = ['1', '2', '3', '4', '5', '6'] symbols_left = ['`'] alpha_right = ['j', 'k', 'l', 'n', 'm', 'h', 'y', 'u', 'o', 'i', 'p'] num_right = ['7', '8', '9', '0'] symbols_right = [';', "'", '[', ']', '.', ',', '/', '-', '=', '\\'] left = [alpha_left, num_left, symbols_left] right = [alpha_right, num_right, symbols_right] def gen_pw (): passwd = "" for i in range (8): if i % 2: cata = left[random.randrange (3)] else: cata = right[random.randrange (3)] passwd += cata[random.randrange (len (cata))] return passwd def check_pw (p): has = [False, False, False] for c in alpha_left: if c in p: has[0] = True for c in num_left: if c in p: has[1] = True for c in symbols_left: if c in p: has[2] = True for c in alpha_right: if c in p: has[0] = True for c in num_right: if c in p: has[2] = True for c in symbols_right: if c in p: has[2] = True if False in has: return None else: return p pwlist = [] while len (pwlist) < 25: tmp_pw = check_pw (gen_pw ()) if tmp_pw: pwlist.append (tmp_pw) print pwlist ```