🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ علی نعیمی
This session Task
جامعه پایتون (وب) ایجاد شده در ۰۳ مرداد ۱۴۰۲

سلام. تسک‌ها انجام شد. مم این اسکریپت رو بدون argparse نوشتم چون وقتی از اون استفاده می‌کنم این خطا رو میده!. چرا؟!

usage: main.py [-h] [-u] [-l] [-d] [-p] length

main.py: error: the following arguments are required: length

import string
from random import choices
def create_password(length=8, upper=False, lower=False, digit=False, pun=False):
    pool = ''
    if upper:
        pool += string.ascii_uppercase
    if lower:
        pool += string.ascii_lowercase
    if digit:
        pool += string.digits
    if pun:
        pool += string.punctuation
    if pool == '':
        pool = string.ascii_letters
    return ''.join(choices(pool, k=length))
if __name__ == '__main__':
    length = int(input("Length of password: "))
    upper = input("User Upper case (y/n): ") == 'y'
    lower = input("User lower case (y/n): ") == 'y'
    digit = input("User digit case (y/n): ") == 'y'
    pun = input("User punc case (y/n): ") == 'y'
    print(create_password(
        length, upper, lower, digit, pun
    ))

درود

مشکلی نداره. اما برای اینکه اون حالت هم درست شه دقت کنید که باید موقع نوشتن دستور اجرا آرگومان رو مقداردهی کنید. برای بررسی میتونید این تاپیک رو ببینید مشابه با مشکل شماست.

بهترین پاسخ
نازنین کریمی مقدم ۰۳ مرداد ۱۴۰۲، ۰۹:۱۹