با استفاده از ماژول datetime و timeit در پایتون دو روش مختلف برای افزایش روز به یک تاریخ (استفاده از datetime.timedelta و افزودن ثانیه با timestamp) پیاده‌سازی کرده و زمان اجرای هر روش را برای 10000 تکرار مقایسه کنید.

15.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 02:52

0.0

یک تابع برای افزایش یک روز با استفاده از datetime.timedelta و یک تابع دیگر که با تبدیل تاریخ به timestamp، افزودن تعداد ثانیه‌ی برابر با یک روز و بازگرداندن به datetime عمل می‌کند بنویسید؛ سپس با ماژول timeit (تابع timeit.timeit یا timeit.repeat) هر کدام را با number=10000 اجرا و میانگین زمان یا کمینه را گزارش کنید. نکته‌ها: کدهای مورد آزمایش را داخل توابع کوچک بگذارید و از setup یا import در timeit برای آماده‌سازی استفاده کنید، و نتایج را به شکلی خوانا مثل میلی‌ثانیه چاپ کنید تا بتوانید عملکرد دو روش را مقایسه کنید.

توسط پژوهشگر در 198 روز قبل ساعت 02:52
دسته بندی ها: Python Python for beginner
sara در 198 روز قبل ساعت 02:53

برای مقایسه عملکرد، کدهای مورد آزمایش را در توابع کوچک قرار دهید و با timeit.repeat چندبار (مثلاً 3 بار) و number=10000 اجرا کنید و میانگین یا کمینه زمان را به میلی‌ثانیه گزارش کنید. روش datetime.timedelta عموماً روشن‌تر و سریع‌تر است چون تنها عمل جمع زمان انجام می‌دهد، در حالی که تبدیل به timestamp و بازگرداندن نیاز به عملیات تبدیل به عدد اعشاری دارد و ممکن است کندتر و کم‌دقت‌تر باشد. همچنین توجه کنید که روش مبتنی بر timestamp برای تاریخ‌های قبل از epoch یا برای datetimeهای timezone-aware و در حضور DST می‌تواند رفتار نادرستی داشته باشد، پس برای شرایط حساس به منطقه زمانی از عملیات زمان‌بندی شده‌ی زمان‌محسوس یا کتابخانه‌هایی مثل dateutil استفاده کنید.

گزارش

1 پاسخ

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

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