Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
刚开始在大学里学习python的密码生成器_Python_Python 3.x - Fatal编程技术网

刚开始在大学里学习python的密码生成器

刚开始在大学里学习python的密码生成器,python,python-3.x,Python,Python 3.x,我的问题在Num1,Num2,Num3行上,我用了一个语音标记似乎可以让它工作,但我需要知道这是否是解决问题的正确方法 此外,对于PassGen+=[random.choice(everything)]行,我使用了其中一个答案将所有内容更改为所有内容,但仍然无法使其工作。您已经用大写字母E定义了变量“everything”。 在代码中,它有一个小写的“e”。 更改此选项,它应该可以正常工作。要使脚本正常工作,必须解决几个问题,因为您似乎正在尝试使用另一种语言的编码约定 缩进在python中很重要

我的问题在Num1,Num2,Num3行上,我用了一个语音标记似乎可以让它工作,但我需要知道这是否是解决问题的正确方法
此外,对于PassGen+=[random.choice(everything)]行,我使用了其中一个答案将所有内容更改为所有内容,但仍然无法使其工作。

您已经用大写字母E定义了变量“everything”。 在代码中,它有一个小写的“e”。
更改此选项,它应该可以正常工作。

要使脚本正常工作,必须解决几个问题,因为您似乎正在尝试使用另一种语言的编码约定

  • 缩进在python中很重要,逻辑和循环需要缩进才能遵循缩进
  • 资本化很重要,变量区分大小写。通常,只有您定义的类才会有大写的第一个字母,或者全局范围内的常量之类的东西(通常您在
    下保护您的主代码,如果
    块中的名称<=
  • 当您确实只需要一个字符串时,您似乎在不适当地使用括号来定义列表
  • 您似乎认为
    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)