آموزش تاریخ و زمان در پایتون، پایتون با استفاده از ماژولهای داخلی مانند datetime, time, و calendar ابزارهای قدرتمندی برای مدیریت و پردازش تاریخ و زمان ارائه میدهد. این ابزارها برای کاربردهایی نظیر ثبت زمان، مدیریت برنامهها، و انجام محاسبات زمانی مفید هستند.
1. کار با تاریخ و زمان در پایتون
ماژول datetime
ماژول datetime یکی از پرکاربردترین ماژولها برای کار با تاریخ و زمان است. این ماژول شامل کلاسهایی مانند date, time, datetime, و timedelta میباشد.
نمایش تاریخ و زمان فعلی
from datetime import datetime
now = datetime.now()
print(f"Current date and time: {now}")
خروجی:
Current date and time: 2024-12-28 15:30:00
استخراج بخشهای مختلف تاریخ و زمان
print(f"Year: {now.year}")
print(f"Month: {now.month}")
print(f"Day: {now.day}")
print(f"Hour: {now.hour}")
print(f"Minute: {now.minute}")
print(f"Second: {now.second}")
قالببندی تاریخ و زمان
میتوانید تاریخ و زمان را با استفاده از متد strftime به قالبهای مختلف تبدیل کنید.
مثال:
formatted_date = now.strftime("%Y-%m-%d %H:%M:%S")
print(f"Formatted date and time: {formatted_date}")
کدهای متداول قالببندی:
| کد | توضیح |
|---|---|
%Y |
سال چهار رقمی |
%m |
ماه دو رقمی |
%d |
روز دو رقمی |
%H |
ساعت (24 ساعته) |
%M |
دقیقه |
%S |
ثانیه |
محاسبات زمانی با timedelta
کلاس timedelta برای انجام محاسبات زمانی استفاده میشود.
مثال:
from datetime import timedelta
future_date = now + timedelta(days=10)
print(f"10 days later: {future_date}")
past_date = now - timedelta(weeks=2)
print(f"2 weeks ago: {past_date}")
مقایسه تاریخ و زمان
میتوانید تاریخ و زمانها را مقایسه کنید.
مثال:
from datetime import date
birthday = date(1990, 5, 15)
if birthday < date.today():
print("This date is in the past.")
else:
print("This date is in the future.")
کار با ماژول time
ماژول time ابزارهایی برای کار با زمان در قالب عددی و همچنین اندازهگیری زمان اجرای کد ارائه میدهد.
نمایش زمان فعلی به صورت عددی
import time
current_time = time.time()
print(f"Seconds since epoch: {current_time}")
اندازهگیری زمان اجرای کد
start_time = time.time()
# کدی که باید اجرا شود
time.sleep(2) # شبیهسازی تأخیر 2 ثانیهای
end_time = time.time()
print(f"Execution time: {end_time - start_time} seconds")
کار با ماژول calendar
ماژول calendar برای تولید و مدیریت تقویمها استفاده میشود.
نمایش یک ماه خاص:
import calendar
print(calendar.month(2024, 12))
بررسی سال کبیسه:
is_leap = calendar.isleap(2024)
print(f"Is 2024 a leap year? {is_leap}")
به طور کلی می توان گفت:
پایتون ابزارهای متنوع و کاربردی برای مدیریت تاریخ و زمان ارائه میدهد. با تسلط بر این ابزارها میتوانید وظایف مربوط به زمان را به سادگی مدیریت کنید و برنامههای پیشرفتهتری توسعه دهید.
2. استفاده از ماژول datetime در پایتون
ماژول datetime یکی از ابزارهای قدرتمند و پرکاربرد پایتون برای کار با تاریخ و زمان است. این ماژول شامل کلاسهایی است که برای نمایش، محاسبه و پردازش تاریخ و زمان استفاده میشوند.
کلاسهای اصلی ماژول datetime
datetime: ترکیب تاریخ و زمان.date: مدیریت فقط تاریخ.time: مدیریت فقط زمان.timedelta: برای انجام محاسبات زمانی.
نمایش تاریخ و زمان فعلی
کلاس datetime امکان دسترسی به تاریخ و زمان فعلی را فراهم میکند.
مثال:
from datetime import datetime
now = datetime.now()
print(f"Current date and time: {now}")
خروجی:
Current date and time: 2024-12-28 15:30:45.123456
ایجاد تاریخ و زمان مشخص
میتوانید تاریخ و زمان خاصی را با استفاده از کلاس datetime ایجاد کنید.
مثال:
custom_date = datetime(2024, 12, 28, 10, 30, 0)
print(f"Custom date and time: {custom_date}")
خروجی:
Custom date and time: 2024-12-28 10:30:00
کار با کلاس date
کلاس date برای مدیریت تاریخها بدون نیاز به اطلاعات زمانی استفاده میشود.
نمایش تاریخ فعلی:
from datetime import date
today = date.today()
print(f"Today's date: {today}")
خروجی:
Today's date: 2024-12-28
محاسبات با تاریخها:
future_date = today.replace(year=today.year + 1)
print(f"One year later: {future_date}")
کار با کلاس time
کلاس time برای مدیریت اطلاعات زمانی به تنهایی استفاده میشود.
مثال:
from datetime import time
time_obj = time(14, 30, 0)
print(f"Time: {time_obj}")
خروجی:
Time: 14:30:00
قالببندی تاریخ و زمان با strftime
با استفاده از متد strftime میتوانید تاریخ و زمان را به قالبهای دلخواه تبدیل کنید.
مثال:
formatted_date = now.strftime("%d-%m-%Y %H:%M:%S")
print(f"Formatted date and time: {formatted_date}")
خروجی:
Formatted date and time: 28-12-2024 15:30:45
محاسبات زمانی با timedelta
کلاس timedelta برای انجام محاسبات روی تاریخ و زمان استفاده میشود.
مثال:
from datetime import timedelta
next_week = now + timedelta(weeks=1)
print(f"One week later: {next_week}")
previous_day = now - timedelta(days=1)
print(f"One day earlier: {previous_day}")
خروجی:
One week later: 2025-01-04 15:30:45.123456
One day earlier: 2024-12-27 15:30:45.123456
مقایسه تاریخها و زمانها
میتوانید تاریخها و زمانها را با استفاده از عملگرهای مقایسهای بررسی کنید.
مثال:
if now > custom_date:
print("The current time is after the custom date.")
else:
print("The custom date is in the future.")
تبدیل رشته به تاریخ با strptime
متد strptime برای تبدیل رشتههای متنی به شیء datetime استفاده میشود.
مثال:
date_string = "28-12-2024 10:30:00"
datetime_obj = datetime.strptime(date_string, "%d-%m-%Y %H:%M:%S")
print(f"Parsed datetime: {datetime_obj}")
خروجی:
Parsed datetime: 2024-12-28 10:30:00
نکات مهم:
- کار با مناطق زمانی: از ماژولهایی مانند
pytzبرای مدیریت مناطق زمانی استفاده کنید. - پردازش دادهها: از ترکیب
timedeltaوstrftimeبرای انجام محاسبات و گزارشگیری استفاده کنید. - خوانایی کد: قالببندیهای مناسب باعث افزایش خوانایی و شفافیت کد میشوند.
نتیجهگیری
ماژول datetime در پایتون ابزار قدرتمندی برای مدیریت تاریخ و زمان است. با تسلط بر کلاسها و متدهای این ماژول، میتوانید عملیات پیچیدهای را روی تاریخ و زمان به سادگی انجام دهید.
