zoukankan      html  css  js  c++  java
  • python习题-用交集方式产生随机密码

    # 1、写一个产生密码的程序,
    # 输入次数,输入多少次就产生多少条数据,
    # 要求密码必须包含大写字母、小写字母和数字,长度8位,不能重复

     1 import  string ,random
     2 num=input('请输入一个数字').strip()
     3 pwds=set()  #定义一个空集合
     4 if num.isdigit():  #判断是否为数字
     5     i=0
     6     while len(pwds)<int(num):
     7         passwd=set(random.sample(string.ascii_letters+string.digits,8))
     8         set1=set(string.ascii_uppercase).intersection(passwd)  #求交集,来判断set1中是否有大写字母
     9         set2 = set(string.ascii_lowercase).intersection(passwd)
    10         set3 = set(string.digits).intersection(passwd)
    11         if set1 and set2 and set3: #非0既真,判断set1,set2,set3 如果都是真,说明密码中含有了大写字母,小写字母,数字
    12             str_passwd=''.join(passwd)+'
    '#要把产生的密码变成字符串
    13             # if str_passwd not in pwds:
    14             pwds.add(str_passwd)
    15                 # i+=1
    16     fw=open('pwds.txt','w')
    17     fw.writelines(pwds)
    18 else:
    19     print('你输入的不是数字')
     
  • 相关阅读:
    F. Journey
    D. Divide
    C. Counting Pair
    A. A Big Dinner
    E
    D -Sale
    第十三课 历史记录画笔工具
    第十二课 文字工具
    第十一课 模糊工具、海绵工具、仿制图章工具
    第十课 切片工具 修复画笔工具 修补工具 颜色替换工具
  • 原文地址:https://www.cnblogs.com/niuniu2018/p/7696661.html
Copyright © 2011-2022 走看看