آموزش ماژول datetime در پایتون
تاریخ(date) در پایتون
یک تاریخ(date) در پایتون، خودش یک نوعِ داده(data type) محسوب نمیشود، اما میتوانیم یک ماژول به نام datetime را ایمپورت کنیم تا با تاریخها مانند آبجکتهای تاریخ رفتار شود.
مثال شماره 1
ایمپورت کردن ماژول datetime و نمایش دادن تاریخ فعلی:
import datetime
x = datetime.datetime.now()
print(x)
نتیجه:
2026-06-25 17:22:23.625009
امتحان کنیدخروجی تاریخ در پایتون
وقتی که ما کدهای مثال بالا را اجرا کنیم، خروجی به صورت زیر خواهد بود:
2026-06-25 17:02:45.984812
تاریخ بالا، حاوی سال، ماه، روز، ساعت، دقیقه، ثانیه و میکروثانیه است.
ماژول datetime متدهای زیادی برای برگرداندن اطلاعات دربارهی آبجکت تاریخ(date object) دارد. در زیر چند مثال وجود دارند؛ بعداً در این فصل، نکات بیشتری را در مورد آنها خواهید آموخت:
مثال شماره 2
برگرداندن سال و برگرداندن نام روز از هفته:
import datetime
x = datetime.datetime.now()
print(x.year)
print(x.strftime("%A"))
نتیجه:
2026
Thursday
امتحان کنیدایجاد آبجکتهای تاریخ(date) در پایتون
برای ایجاد یک تاریخ(date)، میتوانیم از کلاس(سازنده یا کانستراکتور) datetime() در ماژول datetime استفاده کنیم.
کلاس datetime() به سه پارامتر نیاز دارد تا یک تاریخ به صورت year, month, day را ایجاد کند.
مثال شماره 3
ایجاد یک آبجکت تاریخ(date):
import datetime
x = datetime.datetime(2020, 5, 17)
print(x)
نتیجه:
2020-05-17 00:00:00
امتحان کنیدنکته: کلاس datetime() نیز دو پارامتر برای زمان(time) و منطقهزمانی(hour, minute, second, microsecond, tzone) میپذیرد. اما آنها اختیاری هستند و مقدار پیشفرض آنها 0 است(و برای منطقه زمانی یا timezone ، مقدار پیشفرض None است).
متد strftime() در پایتون
آبجکت datetime یک متد دارد که از آن برای فرمتدهیِ آبجکتهای تاریخ(date) استفاده میشود؛ تا آنها به رشته های قابل خواندن، تبدیل شوند. نام این متد، strftime() است و یک پارامتر میپذیرد تا بر اساس آن، فرمتِ رشتهی برگردانده شده را مشخص کند.
مثال شماره 4
نمایش دادن نام ماه:
import datetime
x = datetime.datetime(2018, 6, 1)
print(x.strftime("%B"))
نتیجه:
June
امتحان کنیدیک مرجع کامل از تمام کدهای فرمت قانونی در پایتون:
| دستور | توضیح | مثال | تست |
|---|---|---|---|
| %a |
روز از هفته، نسخهی کوتاه شده |
Wed | امتحان کنید |
| %A |
روز از هفته، نسخهی کامل |
Wednesday | امتحان کنید |
| %w |
روز از هفته بعنوان یک عدد از 0 تا 6، عدد شماره 0 برابر با Sunday است. |
3 | امتحان کنید |
| %d |
روز از ماه، 01-31 |
31 | امتحان کنید |
| %b |
نام ماه، نسخهی کوتاه شده |
Dec | امتحان کنید |
| %B |
نام ماه، نسخهی کامل |
December | امتحان کنید |
| %m |
نام ماه به صورت یک عدد 01-12 |
12 | امتحان کنید |
| %y |
سال، نسخهی کوتاه شده، بدون قرن(century) |
18 | امتحان کنید |
| %Y |
سال، نسخهی کامل |
2018 | امتحان کنید |
| %H |
ساعت 00-23 |
17 | امتحان کنید |
| %I |
ساعت 00-12 |
05 | امتحان کنید |
| %p |
قبل از ظهر یا بعد از ظهر AM/PM |
PM | امتحان کنید |
| %M |
دقیقه 00-59 |
41 | امتحان کنید |
| %S |
ثانیه 00-59 |
08 | امتحان کنید |
| %f |
میکروثانیه 000000-999999 |
548513 | امتحان کنید |
| %z |
اخلاف زمان هماهنگ جهانی(UTC) |
+0100 | |
| %Z |
منطقه زمانی(Timezone) |
CST | |
| %j |
عدد روز در سال 001-366 |
365 | امتحان کنید |
| %U |
عدد هفته در سال، یکشنبه(Sunday) به عنوان اولین روز هفته، 00-53 |
52 | امتحان کنید |
| %W |
عدد هفته در سال، دوشنبه(Monday) به عنوان اولین روز از هفته، 00-53 |
52 | امتحان کنید |
| %c |
نسخه محلیِ(Local) تاریخ و زمان |
Mon Dec 31 17:41:00 2018 | امتحان کنید |
| %C |
قرن |
20 | امتحان کنید |
| %x |
نسخهی محلی تاریخ |
12/31/18 | امتحان کنید |
| %X |
نسخهی محلی زمان |
17:41:00 | امتحان کنید |
| %% |
یک علامت درصد(%) |
% | امتحان کنید |
| %G |
سال با استاندارد ISO 8601 |
2018 | امتحان کنید |
| %u |
روز در هفته(1-7) با استاندارد ISO 8601 |
1 | امتحان کنید |
| %V |
عدد هفته(01-53) با استاندارد ISO 8601 |
01 | امتحان کنید |
منبع: www.w3schools.com/python
- بازدید: 31
1. سعی کنید نظرات شما مرتبط با مقاله ی مورد نظر باشد، در غیر این صورت پاسخ داده نخواهد شد.
2. سوالات خود را به صورت کوتاه بیان کنید و از پرسیدن چند سوال به طور همزمان خودداری کنید.
3. سوال خود را به طور واضح بیان کنید و از کلمات مبهم استفاده نکنید.