如何在命令提示符windows10中运行python脚本

2024-09-29 23:21:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图运行我的Python脚本,但它总是在最后自动关闭。我做错什么了?我对Python很陌生,所以请不要因为我缺乏知识而评判我。如有任何建议,不胜感激

import random

characters = ["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",'1','2','3','4','5','6','7','8','9','0',"!","@","#","$","%","&","*","(",")"]

characterswosymbols = ["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']

strength = input("Do you want a weak, medium or strong password?: ").lower()

new_password = []

def password(strength):
    if strength == 'weak':
        symbols = input("Do you want symbols in your password? (#,@ etc.): ").lower()
        if symbols == 'yes':
            while len(new_password) != 8:
                new_password.append(characters[random.randint(1, 70)])
        elif symbols == 'no':
            while len(new_password) != 8:
                new_password.append(characterswosymbols[random.randint(1, 70)])

    elif strength == 'medium':
        symbols = input("Do you want symbols in your password? (#,@ etc.): ").lower()
        if symbols == 'yes':
            while len(new_password) != 11:
                new_password.append(characters[random.randint(1, 70)])
        elif symbols == 'no':
            while len(new_password) != 11:
                new_password.append(characterswosymbols[random.randint(1, 70)])

    elif strength == 'strong':
        symbols = input("Do you want symbols in your password? (#,@ etc.): ").lower()
        if symbols == 'yes':
            while len(new_password) != 14:
                new_password.append(characters[random.randint(1, 70)])
        elif symbols == 'no':
            while len(new_password) != 14:
                new_password.append(characterswosymbols[random.randint(1, 70)])


    return new_password

password(strength)

new_password = "".join(new_password)

print(new_password)

代码如上。。。在

谢谢

乌姆卡尔


Tags: younewinputlenrandompassworddostrength
3条回答

您可以使用以下方法阻止控制台关闭:

Python 3:input("prompt: ")

Python 2:raw_input("prompt: ")

这些操作将使控制台保持活动状态,直到您按Return(Enter)

您可以将文件保存在文件系统中。例如,如果我将它保存为main.pyC:/Users/Me/main.py的位置,我可以简单地转到Windows命令提示符并键入python c:/Users/Me/main.py,程序就会运行。程序随后将关闭,但您将看到输入,因为即使程序执行完成,命令提示符也不会退出。在

更简单,更好,更高效,random.sample+string.printable+string.digits+string.ascii_letters

import random,string

strength = input("Do you want a weak, medium or strong password?: ").lower()


def password(strength):
    new_password = []
    if strength == 'weak':
        symbols = input("Do you want symbols in your password? (#,@ etc.): ").lower()
        if symbols == 'yes':
            new_password.extend(random.sample(string.printable.rstrip(),8))
        elif symbols == 'no':
            new_password.extend(random.sample(string.digits+string.ascii_letters,8))

    new_password = []
    if strength == 'medium':
        symbols = input("Do you want symbols in your password? (#,@ etc.): ").lower()
        if symbols == 'yes':
            new_password.extend(random.sample(string.printable.rstrip(),11))
        elif symbols == 'no':
            new_password.extend(random.sample(string.digits+string.ascii_letters,11))

    new_password = []
    if strength == 'strong':
        symbols = input("Do you want symbols in your password? (#,@ etc.): ").lower()
        if symbols == 'yes':
            new_password.extend(random.sample(string.printable.rstrip(),14))
        elif symbols == 'no':
            new_password.extend(random.sample(string.digits+string.ascii_letters,14))


    return new_password

new_password = "".join(password(strength))

print(new_password)

以下是输出示例:

^{pr2}$

相关问题 更多 >

    热门问题