رفتن به محتوا
یادداشت‌های یک روزنامه‌نگار

کار با تاریخ و زمان در پایتون با datetime — درس پنجاه‌و‌یکم

برای یک مطالعه آرام
کار با تاریخ و زمان در پایتون با datetime

پایتون یک زبان برنامه‌نویسی قدرتمند است که امکان کار با تاریخ و زمان را به صورت حرفه‌ای فراهم کرده است. ما در این مقاله قصد داریم به بررسی نحوه کار با تاریخ و زمان در پایتون با استفاده از ماژول datetime بپردازیم.


آشنایی با ماژول datetime

ماژول datetime یکی از ماژول‌های داخلی پایتون است که امکان کار با تاریخ و زمان را فراهم می‌کند. این ماژول شامل کلاس‌های مختلفی برای نمایش تاریخ، زمان و ترکیب آن‌ها می‌باشد.

  • date: برای نمایش تاریخ
  • time: برای نمایش زمان
  • datetime: برای نمایش تاریخ و زمان

نمایش تاریخ و زمان فعلی

برای نمایش تاریخ و زمان فعلی می‌توان از کلاس datetime استفاده کرد. در زیر یک مثال ساده برای نمایش تاریخ و زمان فعلی آورده شده است:


import datetime

now = datetime.datetime.now()
print("تاریخ و زمان فعلی:", now)

در این مثال، تابع now() تاریخ و زمان فعلی را برمی‌گرداند و سپس در خروجی چاپ می‌شود.


ساختار تاریخ و زمان

یک شیء datetime شامل چندین بخش مختلف است:

  • سال (year)
  • ماه (month)
  • روز (day)
  • ساعت (hour)
  • دقیقه (minute)
  • ثانیه (second)

برای دسترسی به هر یک از این بخش‌ها می‌توان از متدهای مربوطه استفاده کرد:


import datetime

now = datetime.datetime.now()
print("سال:", now.year)
print("ماه:", now.month)
print("روز:", now.day)
print("ساعت:", now.hour)
print("دقیقه:", now.minute)
print("ثانیه:", now.second)

کار با تاریخ

برای کار با تاریخ می‌توان از کلاس date استفاده کرد. این کلاس شامل اطلاعاتی مانند سال، ماه و روز می‌باشد.


import datetime

today = datetime.date.today()
print("تاریخ امروز:", today)

همچنین می‌توان تاریخ‌های مختلف را با هم مقایسه کرد:


import datetime

date1 = datetime.date(۱۴۰۲, ۱, ۱)
date2 = datetime.date(۱۴۰۲, ۱, ۱۵)

if date1 < date2:
    print("date1 قبل از date2 است")

کار با زمان

برای کار با زمان می‌توان از کلاس time استفاده کرد. این کلاس شامل اطلاعاتی مانند ساعت، دقیقه و ثانیه می‌باشد.


import datetime

now = datetime.datetime.now()
current_time = now.time()
print("زمان فعلی:", current_time)

همچنین می‌توان زمان‌های مختلف را با هم مقایسه کرد:


import datetime

time1 = datetime.time(۸, ۰, ۰)
time2 = datetime.time(۱۲, ۰, ۰)

if time1 < time2:
    print("time1 قبل از time2 است")

تبدیل تاریخ و زمان

گاهی اوقات لازم است تاریخ و زمان را از یک فرمت به فرمت دیگری تبدیل کنیم. می‌توان از تابع strftime برای این کار استفاده کرد:


import datetime

now = datetime.datetime.now()
formatted_time = now.strftime("%Y-%m-%d %H:%M:%S")
print("تاریخ و زمان فعلی (فرمت شده):", formatted_time)

در این مثال، %Y سال، %m ماه، %d روز، %H ساعت، %M دقیقه و %S ثانیه را نمایش می‌دهد.


تفاوت بین تاریخ‌ها

برای محاسبه تفاوت بین دو تاریخ می‌توان از کلاس timedelta استفاده کرد:


import datetime

date1 = datetime.date(۱۴۰۲, ۱, ۱)
date2 = datetime.date(۱۴۰۲, ۱, ۱۵)

difference = date2 - date1
print("تفاوت بین دو تاریخ:", difference.days, "روز")

در این مثال، difference یک شیء timedelta است که تعداد روزهای بین دو تاریخ را نمایش می‌دهد.


زمان باقی‌مانده تا یک تاریخ خاص

اگر می‌خواهید بدانید که تا یک تاریخ خاص چند روز باقی مانده است، می‌توانید از کد زیر استفاده کنید:


import datetime

target_date = datetime.date(۱۴۰۳, ۱, ۱)
today = datetime.date.today()

if today < target_date:
    time_to_target = target_date - today
    print("زمان باقی‌مانده تا تاریخ هدف:", time_to_target.days, "روز")
else:
    print("تاریخ هدف گذشته است")

نمایش تاریخ و زمان در قالب‌های مختلف

برای نمایش تاریخ و زمان در قالب‌های مختلف می‌توان از تابع strftime استفاده کرد:


import datetime

now = datetime.datetime.now()

print("فرمت ۱:", now.strftime("%Y-%m-%d"))
print("فرمت ۲:", now.strftime("%d/%m/%Y"))
print("فرمت ۳:", now.strftime("%B %d, %Y"))

در این مثال، %B ماه را به صورت کامل نمایش می‌دهد.


خواندن تاریخ و زمان از کاربر

برای خواندن تاریخ و زمان از کاربر می‌توان از تابع input استفاده کرد:


import datetime

date_str = input("یک تاریخ را وارد کنید (YYYY-MM-DD): ")
time_str = input("یک زمان را وارد کنید (HH:MM:SS): ")

date_obj = datetime.datetime.strptime(date_str, "%Y-%m-%d").date()
time_obj = datetime.datetime.strptime(time_str, "%H:%M:%S").time()

print("تاریخ وارد شده:", date_obj)
print("زمان وارد شده:", time_obj)

نکات مهم و کاربردی

در هنگام کار با تاریخ و زمان، دقت به فرمت‌ها و مناطق زمانی مختلف بسیار مهم است.

  • همیشه چک کنید که تاریخ و زمان ورودی کاربر درست باشد.
  • از کلاس‌های مختلف datetime برای مدیریت تاریخ و زمان به صورت جداگانه استفاده کنید.

تمرین

import datetime

# تمرین: تاریخ و زمان فعلی را بگیرید و سپس 10 روز به آن اضافه کنید
now = datetime.datetime.now()
future_date = now + datetime.timedelta(days=10)

print("تاریخ و زمان فعلی:", now)
print("تاریخ و زمان 10 روز بعد:", future_date)

با انجام این تمرین، شما می‌توانید نحوه کار با تاریخ و زمان در پایتون را بهتر درک کنید.


منابع

برای یادگیری بیشتر در مورد کار با تاریخ و زمان در پایتون، می‌توانید به منابع زیر مراجعه کنید:

  • مستندات رسمی پایتون: datetime
  • آموزش‌های آنلاین و ویدئوهای آموزشی در سایت‌های مختلف مانند YouTube و Udemy

به پایان این نوشته رسیدید.

شاید بخواهید بخوانید

گفت‌وگو درباره این نوشته

دیدگاه شما

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دنبال چه می‌گردید؟

در میان مقاله‌ها، یادداشت‌ها و صفحات سایت جست‌وجو کنید.

همه چیز در دسترس

جعبه ابزار شما

خبرخوانخبرهای افغانستان و جهان نرخ اسعارنرخ ارزهای مختلف آب‌وهواوضعیت شهرها و ولایت‌ها تلویزیون زندهتماشای شبکه‌های تلویزیونی رادیو زندهصدای رادیوها قرآن صوتیشنیدن تلاوت قرآن اوقات شرعیزمان نمازها لرزه‌نگاریرویدادهای زمین‌لرزه

جهان نوشته‌ها

معلومات عمومی۱۰۲۸ نوشتهصحت۵۵۴ نوشتهآموزش‌ها۴۴۱ نوشتهتاریخ۴۳۳ نوشتهچرا ها؟۳۳۲ نوشتهوبلاگ۱۹۱ نوشتهمهارت‌های زندگی۸۹ نوشتهمبانی فلسفه‌ی غرب۵۰ نوشتهآموزش ساده پایتون۵۰ نوشتهاحمد ظاهر۴۷ نوشتهآلمان۲۵ نوشتهمهاجرت۲۲ نوشتهموسیقی۲۰ نوشتهکتابخانه۱۷ نوشتهپادکست۱۷ نوشتهورزش۱۵ نوشتهفرهنگ و هنر۱۵ نوشتهخبر۱۵ نوشتهمقالات۱۵ نوشتهخلاصه کتاب۱۵ نوشتهمحلی هراتی۱۴ نوشتهخبرها۱۴ نوشتهزبان آلمانی۱۳ نوشتههمه۱۳ نوشتهجامعه۱۳ نوشتهروایت‌ها۱۲ نوشتهدانش۱۲ نوشتهسلامت۱۲ نوشتهدرست بنویسیم۱۱ نوشتهسیاست۱۱ نوشتهیادداشت‌ها۱۱ نوشتهگزارش‌ها۱۱ نوشتهاصطلاحات سیاسی۱۰ نوشتهمقاله‌ها۱۰ نوشتهچگونه ویزا بگیریم؟۹ نوشتهشب‌نامه‌ها۸ نوشتهویژه۸ نوشتهابزار۸ نوشتهمطالب مناسبتی۶ نوشتهچگونه۶ نوشتهدنیای مهاجرت۶ نوشتهسفرنامه‌ها۶ نوشتهزندگی۶ نوشتهخبرها۵ نوشتهدانلود۵ نوشتهتکنالوژی۵ نوشتههوش مصنوعی۵ نوشتهکلاسیک۵ نوشتهپخش زنده تلویزیون های افغانستان۴ نوشتهمصاحبه‌ها۴ نوشتهآمار و ارقام مهاجرین۳ نوشتهکتاب۲ نوشتهپانزده اگست۱ نوشته

برای خواندن بعدی

نوشته‌هایی که در همین مرورگر ذخیره کرده‌اید.

منوی پیمان

PHP Code Snippets Powered By : XYZScripts.com
Verified by MonsterInsights