zoukankan      html  css  js  c++  java
  • python写一个密码生成器的类,要求有个类变量,统计一下一共生成过多少个密码。 要求有4个方法,1:构造方法 2 实例方法 3 类方法 4 静态方法

    生成指定长度的随机数字密码
    生成指定长度的随机字母密码
    生成指定长度的随机数字和字母的混合

    #encoding=utf-8

     

    import random

    import string

    class password_generator:

        password_time=0

     

        def __init__(self,length):

            self.length=length

     

        def digital_password(self):

            password_generator.password_time+=1

            s=""

            for i in range(self.length):

                s+=str(random.randint(0,9))

            return s

     

     

        @classmethod

        def letter_password(cls,length):

            password_generator.password_time+=1

            s=""

            for i in range(length):

                s+=str( random.choice(string.letters))

            return s

     

     

     

        @staticmethod

        def letter_mix_digital_password(length):

            password_generator.password_time+=1

            s=""

            s1=""

            nbr=random.randint(0,length)

            for i in range(nbr):

                s+=str( random.choice(string.letters))

            for i in range(length-nbr):

                s1+=str( random.randint(0,9))

            return s+s1

     

     

    a=password_generator(10)

    print a.length

    print a.digital_password()

    print password_generator.letter_password(10)

    print a.letter_mix_digital_password(10)

     

    print "total password:",password_generator.password_time

    c:Python27Scripts>python task_test.py

    10

    4775220675

    xhqpSYbgGj

    TjDIZwuB19

    total password: 3

  • 相关阅读:
    .VC中的Attach和Detach
    virtual void DrawItem(LPDRAWITEMSTRUCT /*lpDrawItemStruct*/);
    用API OleLoadPicture通过IStream来加载JPG、GIF格式的图片
    .OnNcHitTest
    线性规划与网络流24题索引
    线性规划与网络流24题 17运输问题
    网络流24题 21最长k可重区间集问题
    网络流16数字梯形问题
    网络流24题 20深海机器人问题
    网络流24题 19负载平衡问题
  • 原文地址:https://www.cnblogs.com/xiaxiaoxu/p/8778301.html
Copyright © 2011-2022 走看看