• 请教python密码生成字典程序设计思路

    2016/03/10 零度九天 5 评论

想写个密码生成字典程序,输入条件就生成文本文件,例如:10位纯数字,或前五位字母后五位数字,思路应该怎样建立?

2 收藏


直接登录
最新评论
  • 袁言 工程师 2016/03/11

    ”.join([random.choice(string.digits) for _ in range(10)])
    ”.join([random.choice(string.ascii_lowercase) for _ in range(5)] + [random.choice(string.digits) for _ in range(5)])

    • 不能吧,就这样简单?其实我更多是想明白思路,也就是程序员在看到类似的命题后是如何想着去实现的!

  • 10位纯数字:10位,每位都可能是 0~9之间的数字,10的10次方个!十个for。
    前五位字母,后五位数字:分开,再合并,先24个字符的5次方排完,然后是10的五次方,然后再组合!组合就是乘法。

  • Duke 大四跨研一 2016/03/13

    我也是新手,看了第一位大神写的东西,觉得很精简,但是新手很难达到这么厉害的程度,所以我也自己试着写了一下。

    如果是第一个要求,生成10个纯数字的密码

    step1,要有10次循环,for i in range(10),这一步很简单
    step2,每次循环随机选取一个数字,注意,这个数字,可以是单个字符,第一位大神就是用的string.digits,这个什么意思,你自己查一下就好,我也用的这个,每次生成的一个字符Num=random.choice(string.digits)
    step3,字符是可以用‘+’连在一起的,所以重新定义一个字符串Number=”,Number=Number+Num
    step4,组合一下顺序就好了,注意要import string 和import random,这个两个都不是内建函数,大功告成。

    第一位大神用的是链的知识,比较简洁,哈哈~

  • AkaKaras   2016/03/14

    10位纯数字
    from random import randint
    ”.join([str(randint(0,9)) for i in range(10)])
    前五位字母后五位数字
    import string
    然後就是一樓的方法