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
