حالت آفلاین — محتوا از حافظهٔ کش نمایش داده می‌شود
آموزش کار با فایل در پایتون؛ CSV، JSON و گزارش‌گیری

مقایسه دو تاریخ معتبر در پایتون؛ انتخاب روز زودتر

تاریخ فروش در پایتون؛ ISO، بازه بسته و گروه‌بندی روز · 0٪

✍️ بعد از تبدیل تاریخ به شیء date، مقایسه‌ها معنای زمانی روشن دارند. لازم نیست سال، ماه و روز را جدا با شرط‌های تو در تو بررسی کنیم. خود date ترتیب را درست می‌سنجد و نتیجه را می‌توانیم دوباره با isoformat به رشته استاندارد برگردانیم.

مثلاً بین 2026-01-03 و 2025-12-31، دومی زودتر است، حتی اگر شماره روزش بزرگ‌تر باشد. مقایسه فقط روز ماه یا جمع عددهای تاریخ غلط است. برای تاریخ‌های برابر، همان تاریخ را خروجی می‌دهیم؛ اینجا هویت منبع یا ترتیب ورودی تاثیری بر نتیجه ندارد.

تابع ناقص هر دو تاریخ را خوانده است. زودتر را انتخاب کن و به شکل دقیق ISO بده. در این فعالیت هر دو رشته از قبل معتبر و دقیق‌اند؛ اعتبارسنجی داده خراب را در گام‌های بعد انجام می‌دهیم. خطای رایج، برگرداندن خود شیء date است؛ معیارها خروجی JSON می‌خواهند و باید رشته تحویل بگیرند. همچنین از تاریخ امروز استفاده نکن؛ سؤال فقط درباره دو آرگومان ثابت است. نمونه‌ای که سال‌ها متفاوت‌اند و نمونه‌ای که دو تاریخ برابرند، بررسی خوبی برای منطق انتخاب تو هستند.

فعالیت شما

تابع earlier_date(first,second) دو رشته معتبر دقیق YYYY-MM-DD می‌گیرد و تاریخ زودتر را به صورت رشته ISO برمی‌گرداند. در تساوی همان تاریخ بده. ورودی نامعتبر در این گام داده نمی‌شود؛ earlier_date('2026-01-03','2025-12-31')='2025-12-31'. خروجی باید رشته باشد، نه شیء date.

مطالعهٔ این گام برای همه آزاد است

برای پاسخ‌دادن، بررسی پاسخ، ثبت پیشرفت و استفاده از دستیار باید شرایط شرکت در فعالیت‌ها را داشته باشید.

برای انجام فعالیت وارد شوید

برای انجام فعالیت‌ها ابتدا این دوره‌های پیش‌نیاز را تکمیل کنید:

کد اولیهٔ فعالیت

from datetime import date
def earlier_date(first, second):
    a, b = date.fromisoformat(first), date.fromisoformat(second)
    # TODO: choose the earlier date and return its ISO string
    return None