کتابخانه Datetime در پایتون برای مدیریت زمان
موسسه پایا پروژه به عنوان متصدی انجام پروژه های پایتون وظیفه ی خود می داند که در راستای ارائه اطلاعات بروز در حوزه نرم افزار پایتون گام های موثری را بردارد. با توجه به اینکه خواندن و ترجمه مقالات و مطالب بروز در زمینه های نوین کار با زبان برنامه نویسی پایتون مستلزم تلاش بسیار است، بهمین علت این موسسه تلاش می کند سهم کوچکی در جهت یادگیری شما داشته باشد.
کتابخانه datetime در پایتون
کتابخانه datetime در پایتون ابزاری قدرتمند برای مدیریت تاریخ و زمان است. این کتابخانه شامل کلاسهای مختلفی است که به شما امکان میدهد تاریخ و زمان را به راحتی مدیریت کنید. در زیر به برخی از قابلیتهای اصلی این کتابخانه اشاره می کنیم:

وارد کردن کتابخانه

وارد کردن کتابخانه datetime اولین گام برای استفاده از قابلیتهای آن در انجام پروژه پایتون است.
کلاسهای اصلی:
date: این کلاس برای کار با تاریخها استفاده میشود و شامل سال، ماه و روز است.
time: این کلاس برای کار با زمانها استفاده میشود و شامل ساعت، دقیقه، ثانیه و میکروثانیه است.
datetime: این کلاس ترکیبی از تاریخ و زمان است و شامل سال، ماه، روز، ساعت، دقیقه، ثانیه و میکروثانیه است.
timedelta: این کلاس برای انجام عملیات ریاضی روی تاریخها و زمانها استفاده میشود، مثل اضافه کردن یا کم کردن روزها، ساعتها و غیره.
tzinfo: این کلاس برای مدیریت اطلاعات منطقه زمانی استفاده میشود. با این حال، برای کار با منطقههای زمانی بهتر است از کتابخانه pytz استفاده کنید.
مثال ها:
1.کار با تاریخها
import datetime
()today = datetime.date.today
print(“Today’s date:”, today)
birthday = datetime.date(17, 5, 1990)
print(“Birthday:”, birthday)
هنگامی که این کد را اجرا میکنید، “تاریخ امروز” تاریخ فعلی زمان اجرای کد را نشان میدهد. “تاریخ تولد” همواره 1990-05-17 را نمایش میدهد.
- کار با زمانها
import datetime
current_time = datetime.time(45, 30, 14)
print(“Current time:”, current_time)
هنگامی که این کد را اجرا میکنید، “زمان فعلی” برابر با 14:30:45 نمایش داده میشود.
- کار با تاریخ و زمان
import datetime
ایجاد یک datetime
()now = datetime.datetime.now
print(“Now:”, now)
ساخت یک datetime مشخص
dt = datetime.datetime(45, 30, 14, 17, 5, 2023)
print(“Specific datetime:”, dt)
هنگامی که این کد را اجرا میکنید، “زمان فعلی” تاریخ و زمان دقیق اجرای کد را نشان میدهد. “datetime مشخص” همواره 2023-05-17 14:30:45 را نمایش میدهد.
لطفاً توجه داشته باشید که بخشهای اعشاری ثانیه در “زمان فعلی” بسته به لحظه اجرای کد ممکن است متفاوت باشند.
- انجام عملیات ریاضی با timedelta
import datetime
اختلاف زمانی 10 روزه
delta = datetime.timedelta(days=10)
اضافه کردن اختلاف زمانی به تاریخ امروز
future_date = datetime.date.today() + delta
print(“Future date:”, future_date)
کم کردن اختلاف زمانی از تاریخ امروز
past_date = datetime.date.today() – delta
print(“Past date:”, past_date)
هنگامی که این کد را اجرا میکنید، “تاریخ آینده” 10 روز پس از تاریخ امروز و “تاریخ گذشته” 10 روز قبل از تاریخ امروز را نشان میدهد. مقادیر نمایش داده شده در خروجی بستگی به تاریخ روز اجرای کد دارند.
فرمتدهی و تجزیه رشتههای تاریخ و زمان
- فرمتدهی
import datetime
()now = datetime.datetime.now
فرمتدهی datetime به رشته
formatted_date = now.strftime(“%Y-%m-%d %H:%M:%S”)
print(“Formatted datetime:”, formatted_date)
هنگامی که این کد را اجرا میکنید، formatted_date تاریخ و زمان فعلی را به فرمت YYYY-MM-DD HH:MM:SS نمایش میدهد. مقادیر دقیق سال، ماه، روز، ساعت، دقیقه و ثانیه بستگی به لحظه اجرای کد دارند.
- تجزیه رشته
import datetime
date_str = “2023-05-17 14:30:45”
تجزیه رشته به datetime
parsed_date = datetime.datetime.strptime(date_str, “%Y-%m-%d %H:%M:%S”)
print(“Parsed datetime:”, parsed_date)
هنگامی که این کد را اجرا میکنید، parsed_date مقدار 2023-05-17 14:30:45 را به عنوان یک شیء datetime نمایش میدهد که از رشته date_str تجزیه شده است.
مدیریت منطقههای زمانی:
برای مدیریت منطقههای زمانی میتوانید از کتابخانه pytz استفاده کنید که با datetime هماهنگ میشود.
import datetime
import pytz
منطقه زمانی UTC
utc = pytz.utc
منطقه زمانی خاص
eastern = pytz.timezone(‘US/Eastern’)
UTC ایجاد یک datetime # با منطقه زمانی
utc_dt = datetime.datetime.now(utc)
print(“UTC datetime:”, utc_dt)
تبدیل به منطقه زمانی دیگر
eastern_dt = utc_dt.astimezone(eastern)
print(“Eastern datetime:”, eastern_dt)
هنگام اجرای این کد، “UTC datetime” تاریخ و زمان فعلی با منطقه زمانی UTC را نشان میدهد، و “Eastern datetime” همان تاریخ و زمان را با تبدیل به منطقه زمانی شرقی (Eastern) نمایش میدهد.

