刚开始在大学里学习python的密码生成器
我的问题在Num1,Num2,Num3行上,我用了一个语音标记似乎可以让它工作,但我需要知道这是否是解决问题的正确方法刚开始在大学里学习python的密码生成器,python,python-3.x,Python,Python 3.x,我的问题在Num1,Num2,Num3行上,我用了一个语音标记似乎可以让它工作,但我需要知道这是否是解决问题的正确方法 此外,对于PassGen+=[random.choice(everything)]行,我使用了其中一个答案将所有内容更改为所有内容,但仍然无法使其工作。您已经用大写字母E定义了变量“everything”。 在代码中,它有一个小写的“e”。 更改此选项,它应该可以正常工作。要使脚本正常工作,必须解决几个问题,因为您似乎正在尝试使用另一种语言的编码约定 缩进在python中很重要
此外,对于PassGen+=[random.choice(everything)]行,我使用了其中一个答案将所有内容更改为所有内容,但仍然无法使其工作。您已经用大写字母E定义了变量“everything”。 在代码中,它有一个小写的“e”。
更改此选项,它应该可以正常工作。要使脚本正常工作,必须解决几个问题,因为您似乎正在尝试使用另一种语言的编码约定
下保护您的主代码,如果
块中的名称<=Num1+Num2+Num3
会生成一个列表,因为您会尝试随机选择一个项目。但是,列表是使用[]
生成的(与第3点相关)Continue
,而且python中的关键字是Continue
(小写)我建议您检查一下python的基本语法,因为它似乎与您习惯的语法有很大不同。您好,欢迎使用StackOverflow。你发布的代码似乎不是Python…它是Python它是Python IDLE 3.4我知道它和大学里的一样。我一定会尝试一下,它仍然说随机的是不确定的。修改E->E是不可行的。还有一些缩进错误会导致语法错误。此外,OP将
Num
变量作为列表,这将使索引作为random不正确。choice(everything)
将生成列表而不是字符串。此外,字符串的串联不能与PassGen+=[random.choice(一切)]
OP尝试将列表添加到字符串中……您的答案中没有提到任何这些内容。看起来可能是这样,我会尝试一下,它成功了。非常感谢,似乎我不需要编辑我的问题
import random
import string
PassGen = ""
length = int(input("how many characters would you like your password to have 8-15? "))
while len(PassGen) != length:
Num1 = ['random.choice(string.ascii_uppercase)']
Num2 = ['random.choice(string.ascii_lowercase)']
Num3 = ['random.choice(string.digits)']
everything = [Num1, Num2, Num3]
PassGen += [random.choice(everything)]
if (PassGen) == length:
print (PassGen)
import random
import string
password_to_be_generated = ""
Length = int(input("how many characters would you like in you password"))
while len(password_to_be_generated) != Length:
Num1 = random.choice(string.ascii_uppercase)
Num2 = random.choice(string.ascii_lowercase)
Num3 = random.choice(string.digits)
Everything = [Num1, Num2, Num3]
password_to_be_generated += random.choice(Everything)
print(password_to_be_generated)