-
Python自带常量(本例中改用这个,不用手工定义了) string.digits #十进制数字:0123456789 string.octdigits #八进制数字:01234567 string.hexdigits #十六进制数字:0123456789abcdefABCDEF string.ascii_lowercase #小写字母(ASCII):abcdefghijklmnopqrstuvwxyz string.ascii_uppercase #大写字母(ASCII):ABCDEFGHIJKLMNOPQRSTUVWXYZ string.ascii_letters #字母:(ASCII)abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ string.punctuation #标点符号:!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
#!/usr/bin/python
#coding=utf8
from random import choice
import string,sys
passwd_seed = string.digits + string.ascii_lowercase + string.ascii_letters + string
.punctuation
"""function to generate a passwd"""
def get_passwd(passwd_length=10): ####默认值
passwd = []
while len(passwd) < passwd_length:
passwd.append(choice(passwd_seed))
password=''.join(passwd)
#password=password.replace("'","\\\'")###这里是为了转义引号,在传入md5加密时遇到引号不识别
#password=password.replace('"','\\\"')###
return password
if __name__ == "__main__":
if len(sys.argv) == 1:
print get_passwd()
else:
length = int(sys.argv[1])
print get_passwd(length)