最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Python生成随机密码的几个示例
时间:2014-08-25 编辑:简简单单 来源:一聚教程网
之前写了篇shell生成随机密码,为了后续更加自动化,部分工作已经转到python的自动化运维上来处理,那么很多原来shell工具就得转化
以下是python写的生成随机密码,用到的知识点为:random用于生成随机数,sys用于获取命令行的参数,默认不加参数的时候,生成16位的密码,还需还可以改进的地方有:
1、生成密码的级别,比如只生成数字或小写字母等
代码如下 | 复制代码 |
[root@liufofu python]# cat ff_mkpasswd.py #!/usr/bin/env python #coding=utf-8 ########################################## ######### descprition ################## # 1.make random password # 2. ######################################## import sys import random def print_usage(): help_info=''' NAME: ff_mkpasswd.py SYNTAX: ff_mkpasswd.py arg1 FUNCTION: make random password ''' def mk_random_passwd(arylist,rlen): randpasswd="" i=0 while i randpasswd=randpasswd+str(arylist[rindex]) i=i+1 return randpasswd if __name__=='__main__': arylist=['a','b','c','d','e','f','g','h','k','l','m','n','o' ,'p','q','r','s','t','u','v','w','x','y','z' ,0,1,2,3,4,5,6,7,8,9,'!','@','#','$','%','^','&','*','(',')','_','=' ,'+','[',']','{','}','.','<','>','?' 'A','B','C','D','E',',F','G','H','I','J','K','L','M','N','O','P','R','S', 'T','U','V','W','X','Y','Z'] rlen=0 if len(sys.argv)<2: rlen=16 else: if sys.argv[1].isdigit(): rlen=int(sys.argv[1]) else: rlen=16 print mk_random_passwd(arylist,rlen) 调用结果如下: [root@liufofu python]# ./ff_mkpasswd.py $[2Zg%%WcG4&t.sk [root@liufofu python]# ./ff_mkpasswd.py 5 vZm#$ [root@liufofu python]# ./ff_mkpasswd.py 10 43nMLo%Noz [root@liufofu python]# ./ff_mkpasswd.py 1 ^ [root@liufofu python]# ./ff_mkpasswd.py 2 2N |
例子2
代码如下 | 复制代码 |
#-*- coding:utf-8 -*- #python3中为string.ascii_letters,而python2下则可以使用string.letters和string.ascii_letters def GenPassword(length=8,chars=string.ascii_letters+string.digits): if __name__=="__main__": |
例子3
代码如下 | 复制代码 |
#!/usr/bin/env python |
-
上一个: PHP连接MSSQL显示中文时为乱码
-
下一个: php正则过滤指定html标签示例
相关文章
- 几种随机密码生成方法 02-16
- PHP导出数据超时的优化建议解读 10-31
- PHP之mysql位运算解析 10-31
- Laravel实现登录跳转功能解析 10-31
- php双向队列解读 10-31
- Laravel异常上下文解决教程 10-24