با استفاده از datetime.now() در پایتون، برنامهای بنویسید که زمان فعلی را بهصورت ISO 8601 با میلیثانیه و همچنین timestamp (ثانیه از epoch) چاپ کند.
3.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 01:44 0.0
برای حل این مسئله در پایتون از ماژول datetime استفاده کنید: یک نمونه با datetime.now() بگیرید و سپس با متد isoformat(timespec='milliseconds') (در پایتون 3.6+) آن را به فرمت ISO با میلیثانیه تبدیل کنید و با متد timestamp() مقدار ثانیهای از epoch را استخراج کنید. نکتهها: اگر نیاز به زمان UTC دارید از datetime.now(timezone.utc) یا datetime.utcnow() بههمراه timezone استفاده کنید، و برای استفاده در اسکریپتها یا نام فایلهای لاگ، timestamp را گرد یا بهصورت int ذخیره کنید. این روش در کاربردهای ساده محاسبات عددی زمانی و خودکارسازی لاگبرداری مفید است.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای دریافت زمان فعلی به شکل ISO 8601 با میلیثانیه و زمان epoch بهصورت ثانیه، از datetime.now(timezone.utc) استفاده کنید و نتیجه را با isoformat(timespec='milliseconds') تبدیل کنید. سپس با dt.timestamp() مقدار ثانیه از epoch را بهدست آورید و اگر لازم است عدد صحیح باشد، از int(dt.timestamp()) استفاده کنید. توجه کنید که استفاده از زمان با منطقه زمانی مشخص خروجی را بهطور قابل پیشبینی نگه میدارد و اگر از datetime.now() بدون timezone استفاده کنید، خروجی ممکن است به تنظیم ساعت محلی بستگی داشته باشد. همچنین از آنجا که timespec='milliseconds' در پایتون 3.6+ پشتیبانی میشود، نسخه پایتون خود را بررسی کنید تا از این قابلیت برخوردار باشید.
گزارش