یک برنامه پایتون بنویسید که از کاربر دو تاریخ به فرمت YYYY-MM-DD بگیرد و تعداد روزهای بین آن‌ها را محاسبه کرده و همه تاریخ‌های بین این دو تاریخ (شامل ابتدا و انتها) را به‌ترتیب چاپ کند.

4.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:26

0.0

برای حل این مسئله از ماژول استاندارد datetime در پایتون استفاده کنید: با datetime.datetime.strptime رشته‌های ورودی را به شیء date تبدیل کنید، سپس با کم کردن دو date یک شی timedelta به‌دست می‌آورید و با صفت days تعداد روزها را می‌گیرید. برای تولید لیست تاریخ‌ها از timedelta(days=1) در یک حلقه استفاده کنید. نکات مفید: قالب ورودی را اعتبارسنجی کنید، اگر تاریخ شروع بزرگ‌تر از تاریخ پایان بود آن‌ها را جابجا کنید و تصمیم بگیرید که آیا شامل دو انتهای بازه هستید یا نه (در این سوال از هر دو انتها استفاده شود).

توسط پژوهشگر در 221 روز قبل ساعت 01:26
دسته بندی ها: Python Python for beginner
arman در 221 روز قبل ساعت 13:16

برای اعتبارسنجی ورودی از یک بلوک try/except ValueError استفاده کنید تا قالب YYYY-MM-DD به درستی رعایت شود. اگر تاریخ مبدا بزرگ‌تر از تاریخ مقصد بود، آن‌ها را با یک جابه‌جایی ساده به ترتیب صعودی درآورید. برای چاپ همه تاریخ‌های بین دو تاریخ به‌صورت شامل هر دو انتها از یک حلقه استفاده کنید که با current = start و شرط current <= end کار می‌کند و هر بار تاریخ را چاپ می‌کند. همچنین با محاسبه end - start، می‌توانید تعداد روزهای بین دو تاریخ را بدست آورید و اگر لازم است هر دو انتها در بازه لحاظ شوند مقدار days را به 1 اضافه کنید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری