#!/usr/bin/env python
import random
import string
mypassWD = ''
list = string.digits + string.letters + string.punctuation#分别为输出数字,大小写字母,标点符号
for i in range(8):
mypassWD += random.choice(list)#随机取出8次
print mypassWD
这里体现了string模块的强大。但是这样写是不够的,下面的改进体现了函数式编程的优点
#!/usr/bin/env python
import random
import string
list = string.digits + string.letters + string.punctuation
"""
做成函数,而且有默认值的形参。可以被其他函数调用
"""
def genPwd(num = 8):
pwd = ''
for i in range(num):
pwd += random.choice(list)
return pwd #返回随机密码
"""
测试行代码,如果是被import就不会执行,如果是文件独立运行就会被执行
"""
if __name__=='__main__':
print genPwd()
print genPwd(10)
执行结果如下