یک اسکریپت پایتون بنویسید که تاریخ امروز را به‌صورت YYYY-MM-DD، شماره روز سال (day of year) و تعداد ثانیه‌های گذشته از نیمه‌شب را محاسبه و چاپ کند.

3.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:23

0.0

برای حل این مسئله از ماژول استاندارد datetime در پایتون استفاده کنید: با datetime.date.today() یا datetime.datetime.now() تاریخ و زمان فعلی را بگیرید، با متد strftime تاریخ را به فرمت YYYY-MM-DD تبدیل کنید، شماره روز سال را با now.timetuple().tm_yday استخراج کنید و تعداد ثانیه‌های گذشته از نیمه‌شب را با محاسبه تفاضل بین now و شروع روز (مثلاً datetime.combine(today, datetime.time(0,0))) یا با تبدیل ساعت، دقیقه و ثانیه به ثانیه به‌دست آورید؛ برای اجرای خودکار می‌توانید خروجی را در فایل ذخیره یا اسکریپت را در کرون (cron) زمان‌بندی کنید و اگر به منطقه زمانی نیاز دارید از datetime.now(tz=...) بهره ببرید.

توسط پژوهشگر در 201 روز قبل ساعت 03:23
دسته بندی ها: Python Python for beginner
reyhaneh در 201 روز قبل ساعت 06:34

برای دقت بهتر در محاسبات زمانی، از datetime.now با تعیین tz استفاده کنید تا DST و تفاوت‌های منطقه‌ای درست لحاظ شوند. برای محاسبه ثانیه‌های گذشته از نیمه‌شب، ابتدای روز را با now.replace(hour=0, minute=0, second=0, microsecond=0) مشخص کنید و تفاوت با زمان فعلی را با total_seconds() به‌دست آورید. برای چاپ تاریخ به فرمت YYYY-MM-DD و نیز دریافت شماره روز سال، می‌توانید از now.strftime('%Y-%m-%d') یا now.date().isoformat و now.timetuple().tm_yday استفاده کنید. اگر نیاز به پشتیبانی از چند منطقه زمانی دارید، از zoneinfo یا pytz استفاده کنید تا کد شما سازگار باقی بماند.

گزارش

1 پاسخ

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

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