使用方法
1、随机生成N位密码。换个角度这其实相当于,准备好大写字母集合,小写字母集合,数字集合,特殊字符集合,从中随机挑选N个字符,然后把它们排成一排。您看,这样我们就不能把一般的需求转化为可以通过编程解决的实际问题了吗?
2、密码至少要包含一个大写字母,一个小写字母,一个数字,一个特殊字符,并且可以指定密码长度——为了满足这一要求,有一个简单的方法,我们从头开始,把密码放在第一位。
大写字母,第二个小写字母,第三个数字,第四个特殊字符,剩下的N-4个字符依次放任意字符。
3、要解决从字符集中随机取字的问题——我们以前学过random.randint()函数,它可以随机生成一个数字,我们把这个随机数字作为索引去取字符集中取值(字符集合可以是str或list形式),从而达到随机取字符的目的。
4、通过命令行交互接收密码长度相对简单,使用input()。
实例
import randomchar def generate_password(length): if length < 4: raise ValueError('密码至少为 4 位') random_char = randomchar.RandomChar() password = random_char.uppercase() password += random_char.lowercase() password += random_char.digit() password += random_char.special() count = 5 while count <= length: password += random_char.anyone() count += 1 return password password_length = input('请输入密码长度(8~20):') password_length = int(password_length) if password_length < 8 or password_length > 20: raise ValueError('密码长度不符') password = generate_password(password_length) print(password)
以上就是python密码生成器的使用,希望对大家有所帮助。更多编程基础知识学习:python学习网
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。