带读取和随机模块的Python密码生成器
我是python新手,正在编写密码生成器。到目前为止,我想我正处在一个需要解释的高原。 最后,如果我想用上面给出的用户输入生成密码,我会得到一个类型错误 (TypeError:choice()接受2个位置参数,但给出了3个) 我遗漏了什么,所以random.choice函数不起作用带读取和随机模块的Python密码生成器,python,random,read-write,Python,Random,Read Write,我是python新手,正在编写密码生成器。到目前为止,我想我正处在一个需要解释的高原。 最后,如果我想用上面给出的用户输入生成密码,我会得到一个类型错误 (TypeError:choice()接受2个位置参数,但给出了3个) 我遗漏了什么,所以random.choice函数不起作用 import random Uppercaseletters = open("Upper.txt").read() Lowercaseletters = open("Lower.
import random
Uppercaseletters = open("Upper.txt").read()
Lowercaseletters = open("Lower.txt").read()
Numbers = open("Zahlen.txt").read()
Symbols = open("Symbole.txt").read()
Upperbool = True
Lowerbool = True
Numbersbool = True
Symbolsbool = True
whole = ""
if Upperbool:
whole += Uppercaseletters
if Lowerbool:
whole += Lowercaseletters
if Numbersbool:
whole += Numbers
if Symbolsbool:
whole += Symbols
print("Hello and welcome to the simple password generator.")
a = 1
b = 1
if b <= 10:
amount = int(input("How many passwords do you want to generate? "))
else:
print("You are exceeding the limit of a maximum of 10 Passwords")
# length auswählen lassen (maximal 20 Zeichen lang (Fehler prevention))
if a <= 20:
length = int(input("How long do you want your password to be? "))
else:
print("That password will be too long, try a number below 20")
for x in range(amount):
password = "".join(random.choice(whole, length))
print(password)
随机输入
大写字母=打开(“Upper.txt”).read()
Lowercaseletters=open(“Lower.txt”).read()
number=open(“Zahlen.txt”).read()
Symbols=open(“Symbole.txt”).read()
Upperbool=True
Lowerbool=True
Numbersbool=True
Symbolsbool=真
整
如果是Upperbool:
整+=大写字母
如果是Lowerbool:
整数+=小写字母
如果编号为bool:
整数+=数字
如果Symbolsbool:
整+=符号
打印(“您好,欢迎使用简单密码生成器。”)
a=1
b=1
如果b我相信你在寻找这样的东西:
随机导入
大写字母=打开(“Upper.txt”).read()
Lowercaseletters=open(“Lower.txt”).read()
number=open(“Zahlen.txt”).read()
Symbols=open(“Symbole.txt”).read()
Upperbool=True
Lowerbool=True
Numbersbool=True
Symbolsbool=真
整
如果是Upperbool:
整+=大写字母
如果是Lowerbool:
整数+=小写字母
如果编号为bool:
整数+=数字
如果Symbolsbool:
整+=符号
打印(“您好,欢迎使用BMD的简单密码生成器。”)
金额=100
长度=100
当金额>10时:
amount=int(输入(“您要生成多少密码?”)
如果金额>10:
打印(“您超过了最多10个密码的限制”)
当长度>20时:
length=int(输入(“您希望密码的长度是多少?”)
如果长度>20:
打印(“该密码太长,请尝试低于20的数字”)
对于范围(金额)内的密码:
password=“”
对于范围内的字符(长度):
密码=密码+随机。选择(列表(全部))
打印(密码)
我修改了它,使其不允许数量超过10,长度超过20。random.choice
只返回一个元素。如果需要序列,请重复调用它。