当前位置: 首页 > 科技观察

如何使用Python制作随机密码生成器_0

时间:2023-03-14 10:51:53 科技观察

TeriEyenike译者|BugattiReviewer丨Noah  每个网站都有某种带有安全界面的表单,要求用户验证其身份。这些表格通常使用您的电子邮件和密码来访问网站。登录时使用安全密码对于防止坏人访问您的帐户至关重要。  这篇文章教你如何使用Python创建一个随机密码生成器,它简单地生成结合字母、数字和符号的加密字符,使密码难以破解或猜测。  让我们构建一个安全的随机密码生成器。入门  要构建随机密码生成器,我们将使用以下方法:  写出所有可接受的密码字符类型,例如字母、数字和符号。  允许用户根据需要为生成的密码输入任意数量的字母、符号和数字。  随机化字符顺序,使密码更难猜到。创建一个随机密码生成器  如您所知,互联网上的某些应用程序会在您创建新帐户时建议随机密码。随机字符由您决定,最长可达八个字符。  创建一个新文件main.py,编写应用程序脚本。#main.pyletters=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']numbers=['0','1','2','3','4','5','6','7','8','9']symbols=['!','#','$','%','&','(',')','*','+']print("欢迎使用PyPassword生成器!")nr_letters=int(input("您希望密码中有多少个字母?\n"))nr_symbols=int(input(f"您想要多少个符号?\n"))nr_numbers=int(input(f"Howmanynumberswouldyoulike?\n"))  以上代码块中的字符组成了列表中显示的密码生成器的组合。  接下来,确保用户可以输入一个数字,一个整数,表示在显示最终输出并使用变量声明时字符出现的次数。  \n:表示输入值将进入下一行  现在,让我们更新其余代码。复制并粘贴以下内容:#main.py#PasswordGeneratorProjectimportrandom#addthis#letters,numbers,andsymbolslists#users'inputfortheamountofcharacters#addthesebelowpassword_list=[]forcharinrange(1,nr_letters+1):password_list.append(random.choice(letters))forcharinrange(1,nr_symbols+1):password_list.append(random.choice(numbers))forcharinrange(1,nr_numbers+1)):password_list.append(random.choice(symbols))random.shuffle(password_list)  代码块执行以下操作:  导入用于生成随机数的内置随机模块。  使用变量password_list创建一个空列表[]。  遍历范围函数中的数字,从起始索引创建一个数字序列,最后一个索引加1结束。  接下来,要追加到空列表,请使用random.choice()方法为声明为变量的每个字符获取随机选择的元素。  使用.shuffle()方法更改新建的password_list,每次输入新密码时改变元素的位置。将密码列表转换为字符串  复制并更新以下代码:#main.py#import#字母、数字和符号列表#用户输入的字符数量#随机化字符#addthispassword=""forcharinpassword_list:password+=char#convertlisttostringpwd=''.join(password_list)print(f"Yourrandompasswordtouseis:{pwd}")  将列表转换为字符串,如下所示:  创建一个空字符串变量password。  使用for关键字遍历密码列表。  将密码字符串与循环的char变量连接起来。  使用.join()方法将列表迭代从密码列表更改为字符串。  最后用f-strings显示密码的结果。  代码最终结果:#main.pyimportrandomletters=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']numbers=['0','1','2','3','4','5','6','7','8','9']symbols=['!','#','$','%','&','(',')','*','+']print("欢迎使用PyPassword生成器!")nr_letters=int(input("您希望密码中有多少个字母?\n"))nr_symbols=int(input(f"您想要多少个符号?\n"))nr_numbers=int(input(f"你想要多少个数字?\n"))password_list=[]forcharinrange(1,nr_letters+1):password_list.append(random.choice(letters))forcharinrange(1,nr_symbols+1):password_list.append(random.choice(numbers))forcharinrange(1,nr_numbers+1):password_list.append(random.choice(symbols))random.shuffle(password_list)password=""forcharinpassword_list:password+=charprint("char",char)#convertlisttostringpwd=''.join(password_list)print(f"你要使用的随机密码是:{pwd}")结语在本文中,您开发了一个每次生成不同随机密码的应用程序,以支持生成尽可能多的密码的动态使用环境。  原文链接:  https://hackernoon.com/how-to-create-a-random-password-generator-using-python