🔥 با کمک هوش مصنوعی در کمتر از 6 ماه فول‌استک شوید ...
۰ ثانیه
۰ دقیقه
۰ ساعت
۷ پروچیستا فرهنگ
تسک‌های جلسه نوشتن Decorator در پایتون
نعمت میردامادی حل شده توسط نعمت میردامادی

دانشجوهای دوره پایتون وب و سرفصل اسکریپت‌نویسی در پایتون

تسک‌های زیر رو انجام بدید و توی همین تاپیک کدهای خودتون رو بفرستید:

تسک 1) سعی کنید با هرچیزی که از ویدیو یاد گرفتید کامل خودتون یکبار همه این کدهارو بنویسید و پیاده سازی کنید.
تسک 2) با خلاقیت خودتون این سعی کنید این کد رو بهترش کنید و اصلاحش کنید.

from string import ascii_lowercase, ascii_uppercase, digits, punctuation
from random import choices
def password_cheked(f):
    def wrapper(*args, **kwargs):
        result = ""
        result += f'{any(i.isdigit() for i in f(*args, **kwargs))}'
        result += f'{any(i.isupper() for i in f(*args, **kwargs))}'
        result += f'{any(i.islower() for i in f(*args, **kwargs))}'
        result += f'{any(i in punctuation for i in f(*args, **kwargs))}'
        print(result)
        if result.count('True') != 4:
            return "password"
    return wrapper()
@password_cheked
def create_password(length=8, upper=False, lower=False,
                    digit=False, pun=False):
    pool = ''
    if lower:
        pool += ascii_lowercase
    if upper:
        pool += ascii_uppercase
    if digit:
        pool += digits
    if pun:
        pool += punctuation
    if pool != '':
        c = ''.join(choices(pool, k=length))
        print(c)
        return c
if __name__ == '__main__':
    a = create_password(lower=True, digit=True, upper=True, pun=True)
    print(a)

سلام من این تسک رو به این شکل انجام دادم که با دکوریتور بتونه قوی بودن پسورد را هم چک کنه

بهترین پاسخ
نعمت میردامادی ۱۷ مهر ۱۳۹۹، ۱۲:۵۷

سلام من با دکوریتور یه کاری کردم که هم بعد هر راند زمان رو نمایش بده هم در آخر زمان کل رو

اگه میشه یه چک بکنید

آذرمهر حبیبی ۱۵ آذر ۱۳۹۹، ۱۷:۱۳

 

 

 

my codes

آقای شاهین روستا ۲۲ آذر ۱۳۹۹، ۰۴:۳۸

سلام

یه روش دیگه برای رسیدن از ثانیه به مقدار ساعت دقیقه و ثانیه اینه که از کتابخونه time استفاده کنیم:

import time
duration = (end_time - start_time).seconds
format_duration = time.strftime("%H:%M:%S", time.gmtime(duration))

استاد برا تبدیل از کد زیر استفاده کرد:

duration = end_time - start_time
hours = duration.seconds // 3600
minutes = duration.seconds // 60
seconds = duration.seconds % 60

این کد مقدار دقیقه رو اشتباه بر میگردونه(مثلا میتونید برا مقدار ۴۰۰۰ ثانیه امتحان کنید)
جواب کامل رو داخل کادر پایین مینویسم:

duration = end_time - start_time
time = duration.seconds
hours = time // 3600
time = time % 3600
minutes = time // 60
seconds = time % 60

 

دکتر گودرز جنتی ۱۰ اردیبهشت ۱۴۰۰، ۱۱:۱۷

سلاااااااااااااااااااام محسن جان

این روش استفاده از کتابخونه time رو تا حالا بهش فکر نکرده بودم. ایول.

این اشتباهی هم که گفتی درسته. من به استاد اطلاع میدم.

خیلی خوبه که اینقدر با توجه ویدیو‌ها رو میبینی و دنبال روش‌های دیگه برای حل مساله هستی.

خدا قوت :)

پروچیستا فرهنگ ۱۰ اردیبهشت ۱۴۰۰، ۲۱:۴۶

Done!

خانم پیراسته صغیری ۲۸ مرداد ۱۴۰۰، ۱۲:۳۸

سلام وقت بخیر. تسک‌های این بخش انجام شد. یک decorator نیز برای شروع و اتمام بازی نوشتم.

نیاز مشا ۲۶ مهر ۱۴۰۰، ۱۸:۳۹